我刚刚发现了使用网格的骨架样板。这是github上的css:https://github.com/dhgamache/Skeleton/blob/master/stylesheets/skeleton.css
不同的列类.one.columns
、.two.columns
等布局。
我以前从未在 CSS 中看到过这种语法。
我是否可以假设.one.columns {}
与.one, .columns {}
不同,因为前者仅影响具有class="one columns"
的元素,而后者影响具有class="one"
和class="columns"
的元素?
那是:
.one.columns = .one AND .columns
.one, .columns = .one OR .columns
>.class1.class2 {}
是指同时具有类class1
和class2
的所有元素。
.class1 .class2 {}
是指具有类 class2
的所有元素,这些元素是具有类 class1
的元素的后代。
.class1, .class2 {}
是指同时具有类class1
和/或类class2
的所有元素。
你是对的。
将它们链接在一起而不带空格会匹配所有存在的类。
它们之间的逗号表示选择与逗号分隔选择器匹配的任何元素。
当 CSS 选择器连接时,它们都必须应用于要选择的元素。 正如div.foo
表示作为div并且也具有类foo
的元素一样,.one.columns
表示具有类one
并且还具有类columns
的元素。
当 CSS 选择器用逗号分隔时,这意味着样式适用于与第一个选择器匹配的任何元素,以及与第二个选择器匹配的任何元素。 正如h1, h2
的意思一样,这些样式适用于h1
元素,也适用于h2
元素,.one, .columns
意味着样式适用于具有one
类的所有元素,以及具有columns
类的所有元素。