如何删除CSS样式中的html格式效果


How to remove html formatting effect in CSS styles

我正在开发一个简单的php-MySql网站,并为数据库中的每个条目提供以下字段的数据(通过循环):

  1. 标题

  2. 组织

  3. 详细信息

数据库中的"DetailedInfo"字段最多可容纳5000个字符。在网页上显示时,我只使用前250个字符。

问题如下。如果一个条目的格式标记(斜体/粗体)从字符240开始,并且格式标记没有被第250个字符关闭,那么问题就开始了。对于所有后续条目,"标题"、"组织"answers"详细信息"将与标记一起显示(因此所有后续文本都是斜体或粗体)。我对Title、Organisation和DetailedInfo使用CSS样式,但似乎CSS无法从数据中去除格式化标记。

任何帮助都将不胜感激。干杯Tim

如果只显示detailedInfo字段的一小部分,我想格式化它并不重要。使用strip_tags()在显示之前清除格式化标记。

CSS无法修复损坏的HTML。您需要将其剥离为纯文本并重新编码(或者直接忽略它)。

我不会用CSS来解决这个问题(我认为这是不可能的)。您正在输出无效的HTML,这将导致问题,尤其是如果有人在IE8或更早版本中查看过该页面。

它也可能比未关闭的标签更糟糕。如果摘录以</i结尾怎么办?

我要么实现一些疯狂的逻辑来关闭250个字符的摘录中任何未关闭的HTML标记,要么从摘录中剥离所有HTML标记。我猜后者会更容易。