将样式应用于元素但不将元素应用于另一个元素

时间:2016-04-25 17:19:32

标签: html css

假设我有类似

的代码
<input type='text' />
<br />
<iframe>
    <input type='text'>
</iframe>

和风格

input[type='text'] {
    border: 1px solid black;
}

我希望样式仅应用于iframe之外的元素。我怎么能实现它?我实际上是在查看css :not选择器,但我对如何使用它感到困惑。我想实现像

这样的东西
input[type='text'], input:not(iframe) {
    border: 1px solid black
}

将样式应用于文本类型的所有输入,但不要在iframe中输入类型文本

3 个答案:

答案 0 :(得分:1)

使用CSS选择某个元素之外的元素是不可能的。

您必须创建具有所需样式定义的类,并将其单独应用于所有输入。

:not选择器可用于选择所有元素,但指定为参数的元素例如::not(p)将从页面中选择除段落之外的所有元素。

答案 1 :(得分:0)

输入[type =&#34; text&#34;] {border:1px solid#000}

iframe输入[type =&#34; text&#34;] {border:none}

答案 2 :(得分:0)

它应该按列出的方式工作。 iframe是隔离的并且应该有自己的样式,您是否在两个页面上都包含相同的样式表?