0

我想在它的项目旁边有一个没有项目符号的无序列表。我创建了 CSS 属性list-style-type并将其设置为none。当我把它放在 html 元素中时它工作正常:

<ul style="list-style-type: none;">
    <li> item1 </li>
    <li> item2 </li>
</ul>

但是当我把它放在一个单独的 CSS 文件中时,由于用户代理属性list-style-type: disk;它不起作用

我尝试使用!important覆盖它,但它再次未被覆盖。这是谷歌浏览器检查元素的图像,显​​示用户代理规则被描边,但此属性的计算值是用户代理值!

在此处输入图像描述

更新:css文件链接正确。我添加了另一个图像,显示用户代理属性已被描边,但它仍用作最终值:

在此处输入图像描述

4

3 回答 3

1

即使没有!importantCSS,也应该覆盖用户代理。此问题可能是由于未在 HTML 中正确链接到 CSS 造成的。

另请查看此样式重置。在您的文档中包含此内容将减少浏览器的不一致。

于 2013-03-15T08:37:18.270 回答
1

您的样式表实际上是否通过link元素包含在您的页面中?

<head>
    <link rel="stylesheet" href="MyStylesheet.css" type="text/css">
</head>

用户代理样式表不应该优先于您网站的样式表。此外,!important正如此处其他答案所建议的那样,这是不好的做法,在这里根本没有必要。

编辑:我上面引用的另一个答案已被删除。较新的答案建议使用“样式重置”,但这实际上并不需要 - 您已经知道您要覆盖哪个属性。

于 2013-03-15T08:39:14.987 回答
1

从外观上看,您正在尝试list-style-type根据此选择器将该属性应用于跨度元素span.form-error。该属性对元素无效span,但应直接应用于ul您的情况。

作为一个实验,您可以将此规则添加到您的 CSS 文件中,以查看这是实际问题:

ul { list-style-type: none; }

如果可行,那么您可以通过向您的 ul 添加一个类来使您的规则更加具体,并将该类用于您的 css-selector。

于 2013-03-15T08:49:47.917 回答