2

所以,我以为我知道我的基本 CSS,但现在我的大脑正在扭曲。我想在我的网站上实现960网格系统,但是在做之前,我想完全了解代码的原理。

我有两个问题。首先,CSS 调整列的宽度。左边有父类“.container”,右边有两个类,其中“列”类是“一”和“二”类的后代选择器。这是否是说“列”类包含在“一个”和“容器”中时是 40px 宽?简单地说:我不是很了解这三个要素之间的关系。

.container .one.column          { width: 40px;  }
.container .two.columns         { width: 100px; }

第二个问题:调用HTML代码中的类时,似乎是用代码完成的

<div class=one column>Content</div>

对?但是没有标记为“一列”的类,只有后代选择器“列”到“一”。我没有得到什么?提前非常感谢。

4

2 回答 2

1

在 HTML 中,您可以将多个类应用于单个元素。但是上面的语法是不正确的;该值必须用引号括起来:

<div class="one column">Content</div>

如果没有引号,您最终会得到两个属性:class=oneand column,这是不同的(和无效的 HTML)。

HTML 没有选择器的概念,因此它们之间的空间不是后代选择器,属性值本身也不是选择器。相反,空格只是一个分隔符,用于将它们区分为两个单独的类。

因此,为了回答这两个问题,选择器.one.column适用于同时具有这两个类的元素。

于 2012-10-28T18:12:29.170 回答
0

class属性没有任何类型的 CSS 处理,例如后代选择器。属性的值class是要应用于元素的以空格分隔的类列表。所以这个div

<div class="one column"></div>

有两个类onecolumn.

然后,CSS 选择器.one.column适用于同时具有类onecolumn.

于 2012-10-28T18:12:46.127 回答