我知道此前有人问过这个问题。但是,让我以不同的方式解决我的问题。我正在使用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”具有正常的字体粗细。目前正好相反。我希望能让自己明白。
谢谢,
答案 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;
}