如何清除子元素的所有样式?
How do I clear all styles from a child element?
我正在使用下拉菜单,但我无法从子菜单中删除某些样式。父元素有一个border-right: 1px
,但我不希望子元素有任何边框,设置为border: 0px
也没有任何作用。有没有办法清除某些东西的所有继承样式?
编辑: 好的,这是我试过的一些代码:
parent {
border-right: 1px solid lightgrey;
}
parent child {
border: 0px 0px 0px 0px !important;
}
在这一点上,我想我将创建一个新 ID 来解决导致我的代码无法工作的任何问题。
第二次编辑: 不,创建 ID 或 Class 也不起作用。这段代码真的想要那个边框。 . .
第 3 次编辑: 好的,这是 jsfiddle。出于某种原因,list-style-type: none
不适用于 fiddle,但它适用于我自己的代码。 . .奇怪。
第四次编辑: Ana 指出了 list-style-type 的问题,我在复制代码时忽略了它。但边界问题仍然存在。我将颜色更改为红色,以便更容易看到。
最终编辑: 安娜回答了!我是个笨蛋,将 border: 0px
应用于 UL 而不是它所属的 IL。谢谢安娜!
在样式中添加 !important。所以你的新 css 将是 border:0px !important;
尝试使用此方法将 css 仅应用于直系子项
#parent > li
如果它被继承,请尝试使用 !important 覆盖父级的 css
为了清除继承的样式,您必须通过对感兴趣的元素应用更具体的规则来覆盖规则。继续阅读 "css specificity"
div {
border: 1px solid red;
}
div.child {
border: 0;
}
我正在使用下拉菜单,但我无法从子菜单中删除某些样式。父元素有一个border-right: 1px
,但我不希望子元素有任何边框,设置为border: 0px
也没有任何作用。有没有办法清除某些东西的所有继承样式?
编辑: 好的,这是我试过的一些代码:
parent {
border-right: 1px solid lightgrey;
}
parent child {
border: 0px 0px 0px 0px !important;
}
在这一点上,我想我将创建一个新 ID 来解决导致我的代码无法工作的任何问题。
第二次编辑: 不,创建 ID 或 Class 也不起作用。这段代码真的想要那个边框。 . .
第 3 次编辑: 好的,这是 jsfiddle。出于某种原因,list-style-type: none
不适用于 fiddle,但它适用于我自己的代码。 . .奇怪。
第四次编辑: Ana 指出了 list-style-type 的问题,我在复制代码时忽略了它。但边界问题仍然存在。我将颜色更改为红色,以便更容易看到。
最终编辑: 安娜回答了!我是个笨蛋,将 border: 0px
应用于 UL 而不是它所属的 IL。谢谢安娜!
在样式中添加 !important。所以你的新 css 将是 border:0px !important;
尝试使用此方法将 css 仅应用于直系子项
#parent > li
如果它被继承,请尝试使用 !important 覆盖父级的 css
为了清除继承的样式,您必须通过对感兴趣的元素应用更具体的规则来覆盖规则。继续阅读 "css specificity"
div {
border: 1px solid red;
}
div.child {
border: 0;
}