Javascript 斜体字体样式不适用于元素';s类属性
我正在做一个简单的练习:通过将元素与Javascript 斜体字体样式不适用于元素';s类属性,javascript,html,css,Javascript,Html,Css,我正在做一个简单的练习:通过将元素与类关联来更改字体样式 代码片段 var divad=document.getElementById(“divad”); divAdvert.className=“newStyle” #divader{ 字体:12pt arial; } .新闻风格{ 字体:斜体; 文字装饰:下划线; } 这是一个广告您已经使用#divadve定义了CSS的字体属性,它比您的.newStyle更受欢迎,它只有字体样式,因此如果您想添加/更改CSS中的任何子属性,您需要在下面定义
类关联来更改字体样式
代码片段
var divad=document.getElementById(“divad”);
divAdvert.className=“newStyle”代码>
#divader{
字体:12pt arial;
}
.新闻风格{
字体:斜体;
文字装饰:下划线;
}
这是一个广告
您已经使用#divadve
定义了CSS的字体
属性,它比您的.newStyle
更受欢迎,它只有字体样式
,因此如果您想添加/更改CSS中的任何子属性,您需要在下面定义为我的代码片段:
代码片段
var divad=document.getElementById(“divad”);
divAdvert.className=“newStyle”代码>
#divader{
字号:12号;
字体系列:“Arial”,无衬线;
}
.新闻风格{
字体:斜体;
文字装饰:下划线;
}
这是一则广告
我认为此链接将帮助您并为您的问题提供另一种解释
你有什么问题吗
.wider
的特异性为0,0,1,0
,而#normal
的特异性为0,1,0,0
。除了ID(或内联定义,但这里的情况并非如此)之外,您不能用任何东西来击败ID
如果您不能将所需的width
声明放在#normal
选择器中,我建议您将其放在#normal.width
中,或者,如果这两者都不可能,请在层次结构中尽可能高的位置(可能在主体上有一个ID?)并将.wide
替换为#container.wide
。此新选择器的特异性为0,1,1,0
,略高于0,1,0,0
使用!重要提示
也可以,但只能作为最后手段使用
例如:
<div id="container" class="wrapper">
<div id="normal" class="wider">
</div>
ID上的字体
样式优先于类上的字体
样式。你的意思是这样吗@eisbehrth似乎并没有真正回答这个问题。你说“.wider
具有0,0,1,0
的特异性,而#normal
具有0,1,0,0
”。但是问题中没有更宽的
或正常的
。这就是@Pang提到的问题的答案
CSS Selector -> Specificity
---------------------------------------
#container #normal -> 0,2,0,0
#container .wider -> 0,1,1,0 // These two have the same specificity so
#normal.wider -> 0,1,1,0 // the last declared value will be used
#normal -> 0,1,0,0
.wrapper .wider -> 0,0,2,0
.wider -> 0,0,1,0