html - 为什么人们在 CSS 中使用多个 ID 选择器?

标签 html css css-selectors

为什么人们在 CSS 中这样做:

#section #content h1
{
   margin:0;
}

他们什么时候可以做:

#content h1
{
   margin:0;
}

对于这样的代码:

<div id="section">
    <div id="content">

    </div>
</div>

并获得相同的结果(至少在 IE7 中——不幸的是我的目标浏览器)。仅仅是为了代码的特殊性吗?代码清晰度来声明你指的是什么?

最佳答案

CSS 文件通常设计为可重用,以便可以在整个网站上使用相同的 CSS,并可以将其应用于应用程序中的所有页面。

以非常具体的节点为目标有助于防止任何意外行为。

假设你有你所说的这段代码,

#content h1
{
   margin:0;
}


<div id="section">
    <div id="content">

    </div>
</div>

有人在你之后使用相同的 CSS 创建了另一个 HTML 页面,结构是这样的

<div id="content">

</div>

并且您希望此页面上的 H1 具有不同的样式。

即使有了这个 CSS,你也可以争辩说

#section #content h1
{
   margin:0;
}

如果新页面由相同的结构组成,

<div id="section">
    <div id="content">

    </div>
</div>

在那种情况下调试起来更容易,在这个例子中结构非常简单,但现实生活中的 CSS 往往很复杂。

关于html - 为什么人们在 CSS 中使用多个 ID 选择器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17732097/

相关文章:

javascript - 在 javascript/html 中取消关注选项卡上的静音选项卡音频

html5 - 获取相对坐标中的设备方向旋转

javascript - 如何在 div 可见时获取事件

javascript - 使用 javascript 从浏览器中的流进行打印

css - 页面右侧的 Twitter bootstrap 白色间隙

javascript - 使用空格分隔值在自定义标记中查找包含特定值的元素

html - 帮助 html5 和 css3

html - Node.js 服务器应用程序不显示 CSS

javascript - 悬停状态下的 anchor 颜色不起作用

javascript - 如何选择包含引号的元素?