在页面中显示html字符串

时间:2014-02-08 07:52:24

标签: html css

我知道此前有人问过这个问题。但是,让我以不同的方式解决我的问题。我正在使用PHP,并希望在我的页面中显示来自数据库的HTML字符串。但问题是页面的CSS是通用样式,它也将它们放在HTML字符串中。但是我想让它在没有任何样式的情况下展示。我经历了一些搜索互联网只是为了找到CSS的“不”选择器。我想知道是否有办法在我的html页面中识别出一个“不”采用一般样式/ css的单个元素? “not”的作用是指定所有其他元素,而“not”则指定参数中的元素。我只是想要相反。

<style>
.div-class p{font-weight: bold;}
.div-class p:not(.no-style){font-weight: normal;}
</style>

<div class="div-class">
<p>This should be bold.</p>
<p class="no-style">This should not be bold.</p>
</div>

我希望带有“no-style”类的“p”具有正常的字体粗细。目前正好相反。我希望能让自己明白。

谢谢,

3 个答案:

答案 0 :(得分:1)

<style>
.div-class p
{
font-weight: bold;
}
.div-class p.no-style
{
font-weight: normal;
}
</style>

<div class="div-class">
<p>This should be bold.</p>
<p class="no-style">This should not be bold.    </p>
</div>

修改:看到它有效:http://jsfiddle.net/C3jqc/

编辑2:你无法避免遗产。您可以通过这种方式在CSS中使用“not”:

<style>
p:not(.unstyled){
font-weight : bold;
}
</style>


<p> this should be Bold</p>
<p class='unstyled'> This shouldn't be bold</p>

然后将“unstyled”类添加到您从PHP创建的每个内容中,并将“:not(.styled)”添加到每个CSS声明中。

另一个选择是重新定义CSS中的每个样式以匹配我原来的响应。

请注意浏览器中“非”选择器的可用性。

答案 1 :(得分:1)

您可以将脚本输出放在具有特定id / class的div中。并将css重置为此div。有很多种css重置可用。

P.S。恕我直言,没有css规则禁用某些元素的所有CSS。

P.P.S。您可以创建一个空的iframe(src="about:blank")并使用javascript将您的内容放在那里。

答案 2 :(得分:0)

有一种简单的方法来覆盖应用的样式 你可以使用!important

例如

p{
font-weight:bold;
}
如果你有

将不适用

.nostyle
{
font-weight:normal !important;
}

JSfiddle