【问题标题】:User agent stylesheet overwriting site styles用户代理样式表覆盖网站样式
【发布时间】:2013-04-27 17:56:49
【问题描述】:

当我检查锚元素(计算样式)时,我得到以下信息

我在互联网上看到的大多数帖子(如this)都指向不正确的 Doctype。为了确保我使用 w3 验证器验证了我的 HTML5 和 CSS3 代码。但没有快乐

谁能解释一下为什么用户代理样式表会覆盖网站样式表?

我的源代码是

<!DOCTYPE html>
<html>
<meta charset="utf-8">
<link href="/css/basic.css" rel="stylesheet">
<title>Test</title>
</head>
<body>
<footer>
<ul class="foot-link-ul">
    <li class="foot-link-box-li"><a href="/compare-plans">Compare Plans</a></li>
</ul>
</footer>
</body>
</html>

还有 CSS

footer {
    width: 986px;
    margin: 0px auto;
    padding: 50px 7px 5px 7px;
    font: 13px Arial, Helvetica, sans-serif;
    overflow: auto;
    color: #FFF;
}

【问题讨论】:

  • 请提供一些代码或jsFiddle
  • 您的 CSS 中可能缺少 } 或选择器错误。不看你的代码是不可能猜到的。

标签: html css


【解决方案1】:

锚点的优先级高于任何容器元素(div、span 等),比如 .nav 是您的容器元素并且您已将颜色设置为灰色,锚点的颜色仍然是默认蓝色,因为它具有更高的优先级。为了克服这个问题,您需要在您的basic.css 文件中定义例如.nav a 甚至是站点范围内的a

编辑

根据您的新编辑,您需要定义footer a

【讨论】:

  • 谢谢。这有帮助。我通常在我的重置中继承锚元素。不知怎的HTML5Doctor似乎错过了它
  • 不客气。我通常依靠自己的重置规则,特别是对于只需要重置少数元素的小型项目,最好是在遇到它们时。
【解决方案2】:

用户代理样式表以&lt;a&gt;为目标,这显然会覆盖任何继承的样式,因此如果您想覆盖用户代理样式,则必须以&lt;a&gt;为目标。

【讨论】:

    猜你喜欢
    • 2011-11-19
    • 2013-02-16
    • 2013-12-05
    • 2015-03-07
    • 2016-06-10
    • 1970-01-01
    • 2012-08-21
    • 2017-02-13
    • 1970-01-01
    相关资源
    最近更新 更多