为什么子弹仍然在list-style之后显示:none;

时间:2013-02-26 16:14:22

标签: css

我不想为此页面上列出的视频显示项目符号:http://63.246.25.145/surety-bonds/contract-bonds/performance_bond.htm

但是,即使在修改master.css文件后,项目符号仍会显示,以确保我的list-style设置为none

#page_bonds #videos {
    padding-top: 20px;
    border-top: 1px dotted #b3b3b3;
    list-style: none;  /*added for video show/hide*/
}

6 个答案:

答案 0 :(得分:3)

好问题;奇怪的是,子弹如何在IE中显示,即使是list-style:none;

这是删除子弹的代码:

/* media query only applies style to IE10 and IE11 */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    /* removes bullets in list items for IE11*/ 
    /* You may need the next line: #page_bonds #videos li */
    li {
        list-style-position: outside;
        overflow: hidden;
    }
}

答案 1 :(得分:1)

您的<li>元素从此处继承:

ul {
    list-style: disc outside none;
}

您需要添加

#page_bonds #videos li { list-style: none; }

答案 2 :(得分:1)

您发布的CSS是指包含感兴趣的div的{​​{1}}标记,而不是ul本身。这使得它很容易被其他地方的CSS覆盖,这样可以为所有ul标记设置样式并为它们ul提供样式。

该怎么做:

您可以提供想要影响其list-style-type:disc的{​​{1}}并定位,也可以重新指定您发布的CSS块以引用ul

工作中的一般原则:

您发布的代码是指特定id的特定元素,但没有特别指您想要更改的元素。由于CSS中的其他位置有明确的声明,因此提供了所有#page_bonds #videos ul个元素id。现在至少有两个不同的指令用于您关注的ul

CSS的工作原则是遵守最具体涉及感兴趣项目的说明。也许有点不直观,在这种情况下,CSS选择一个似乎更通用的(list-style-type:disc)而不是看起来更具体的那个(ul)。但实际上ul更具体地基于这样的逻辑:特定类型元素的指令应该胜过其包含#page_bonds #videos的样式。

请记住:仅仅因为你在CSS中引用了 ul ,并不意味着你实际上是在尽可能地使语句具体化。

答案 3 :(得分:1)

使用级联样式表,元素的继承顺序不仅仅是包含顺序的简单问题 - 请参阅 - Cascading order and Inheritance的详细说明。

在您的情况下,您的列表是从master.css第639行继承价值:

ul {
    list-style: disc outside none;
    margin-left: 20px;
}

删除此引用或使用!important或添加更专业的css标记。

答案 4 :(得分:0)

CSS元素将其值传递给子元素。要覆盖它,请使用!important。

尝试:

list-style: none !important;

了解!important here.

答案 5 :(得分:0)

在您的页面的来源中,我可以看到您的列表样式被此样式表覆盖(63.246.25.145/styles/master.1361894679.css)

您可以通过更改样式来更快地通过

指定相关列表来克服此问题
#videos ul li { list-style: none !important; }

或者您可以编辑链接到页面的CSS并更改级联规则以允许视频没有列表样式。

[1]: