Css 一个伪类有多少权重?

Css 一个伪类有多少权重?,css,dotnetnuke,Css,Dotnetnuke,我在DNN环境中工作,每个站点加载的默认样式表为伪类设置样式。我可以编辑默认的样式表,但由于这是库存,并且随所有升级而来,所以我更愿意不使用它,而是在外观级别覆盖它们的样式 有人知道一种解决方案,可以让所有这些伪类再次开始侦听独立元素吗 A:link { text-decoration: none; color: #003366; } A:visited { text-decoration: none; color: #003366; } A:hover {

我在DNN环境中工作,每个站点加载的默认样式表为伪类设置样式。我可以编辑默认的样式表,但由于这是库存,并且随所有升级而来,所以我更愿意不使用它,而是在外观级别覆盖它们的样式

有人知道一种解决方案,可以让所有这些伪类再次开始侦听独立元素吗

A:link
{
    text-decoration: none;
    color: #003366;
}

A:visited
{
    text-decoration: none;
    color: #003366;
}

A:hover
{
    text-decoration: underline;
    color: #ff0000;
}

A:active
{
    text-decoration: none;
    color: #003366;
}
另外,无论选择器有多强,
a:hover{}
是否总是击败选择器a{}


编辑: 我不想用!重要,因为我必须在任何地方都使用重要,我不想在文档中嵌入任何样式


我的假设是a:link{text-decoration:none;}只会被同一个伪类覆盖,我希望有一种方法可以避免总是为每个a标记定义伪类。

如果在HTML本身的
标记中包含声明,它将覆盖外部样式表中设置的任何样式

另一个解决方案是创建第二个CSS文档来覆盖现有的CSS。确保在包含现有CSS文件(适用于IE 6 compat)后包含此CSS文件。然后使用
!重要信息
标记所有要替代的样式

有关更多信息,请参阅W3规范中关于

编辑:回答第二个问题
a:hover{}
将击败
选择器a{}
,但
选择器a:hover{}
将击败
a:hover{}

另外,无论选择器多么强大,
a:hover{}
是否总是击败选择器
a{}


这取决于:在设置冲突属性的情况下,更具体的选择器将获胜;否则,它们将是相加的。(当然,除非您使用的是
!important
…)

我只是在使用:first child和:last child时测试了加载时间。每个(在我的本地计算机上)的差异似乎都在8毫秒左右,但我不确定这是否会随着使用次数的增加而增加。

正确,并且考虑到默认值添加了:active、:link等。现在每次我要覆盖它时,我都必须定义每个伪类。