分类CSS
指定样式时,假设我们想让标题变成橘色,使用serif字体,底部加上浅灰色边线,而"sidelinks"无序清单则要把小圆点符号去掉,清单项目改为粗体.
方法A需要的CSS内容看起来会像这样:
.sideheading { font-family: Georgia, serif; color: #c63; border-bottom: 1px solid #ccc; } .sidelinks { list-style-type: none; } .link { font-weight: bold; }
我们能参照标记内制定的分类名称(class),为这些标签指定特殊样式,你甚至能想象页面的其他部分也照这个方式组织: 导航条,页尾与内容区,每个标签都加上了杂乱的分类,以便对它们有完全控制权.
没错,它的确能运作,但是有个简单的做法能够节省这些分类属性(class),同时让你的CSS更容易阅读,更具组织性,接着看方法B.
方法B:自然的选择
<div id="sidebar"> <h3>About This Site</h3> <p>This is my site.</p> <h3>My Links</h3> <ul> <li><a href="archives.html">Archives</a></li> <li><a href="about.html">About Me</a></li> </ul> </div>
方法B短小精悍!但是等等,分类都到哪里去了?恩...你很快就会发现我们其实并不是真的需要它们,主要是因为我们把这些标签都塞进一个具有惟一名称(本例是sidebar)的<div>的关系.
这就是发挥继承选择器作用的地方了.我们只需要直接以标签名称指定位于sidebar之内的标签,就能去掉这些多余的分类属性.
以内容前后关系指定CSS
让我们看看与方法A相同的样式,但是这次我们用继承选择器指定位于sidebar里的标签.
#sidebar h3 { font-family: Georgia, serif; color: #c63; border-bottom: 1px solid #ccc; } #sidebar ul { list-style-type: none; } #sidebar li { font-weight: bold; }
通过参考 #sidebar ID,就能为包含在其中的标签指定特殊样式,举例来说,只有位于<div id="sidebar">之内的<h3>标签会设定上述的CSS规则.
这种根据内容前后关系指定样式的做法是缩短标记内容的关键.通常在为内容设计好语义结构之后,就不必为标签加上分类属性了.
出处:蓝色理想
责任编辑:bluehearts
上一页 标记语言——精简标签 [1] 下一页 标记语言——精简标签 [3]
◎进入论坛网页制作、WEB标准化版块参加讨论,我还想发表评论。
|