当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > 不使用class和id进行网页布局的方法

CSS样式表
让图片 div居中实现代码
去掉点击链接时周围的虚线框outline属性
CSS 优先级 详细分析
广告始终定位到网页右下角 css
superLink 让伪链接更有可用性
CSS 模块化 实现方法
css 选择器 介绍
CSS 语法 学习css入门者看
firefox 滚动条消失引起页面抖动的问题
纯CSS定位的固定垂直居中浮动层代码,附经典解说 《详解定位与定位应用》
渲染CSS选择器
CSS 兼容问题
css textarea 高度自适应,无滚动条
CSS 网页表单实现鼠标悬停交互效果
鼠标激活显示背景色网页特效CSS代码
CSS制作用户登录和用户注册的用户体验表单
CSS代码 注释的3种方法
网页头部css代码优化实例
IE7和IE8的兼容性问题
CSS 网页布局网页制作技巧总结

CSS样式表 中的 不使用class和id进行网页布局的方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 50 ::
收藏到网摘: n/a

结合了富有新的语义化标记的HTML5,CSS3为web设计师们的网页提供了神一般的力量。有了HTML5的能量,我们将得到更多的对文档代码的控制权,有了CSS3的能量,我们的控制权将趋于无穷大!
  即使没有那些高级的CSS选择器,我们仍然可以通过强大的HTML5条调用不同的容器而不劳驾class和id这类属性。像以往的DIV布局,我们在css中可能要这样调用:

div#news {}
div.section {}
div.article {}
div.header {}
div.content {}
div.footer {}
div.aside {}

我们再来看看基于HTML5的实例:


section {}
article {}
header {}
footer {}
aside {}

  这是个进步,但仍有一些问题需要解决。在<div>实例中,我们需要通过class或id属性来调用页面中的元素。这种逻辑将允许我们将样式应用到文档中的任何一个元素上,无论是整体还是个体。例如在<div>实例中,.section 和 .content元素很容易定位。但是在HTML5实例中,实际文档中会有很多个section元素。其实我们可以添加一些特定的属性选择器来调用那些不同的section元素,不过谢天谢地,我没现在可以用少量的高级CSS选择器来定位不同的section元素。

 下面让我们来看看如何在不使用class和id的情况下定位HTML5页面元素的一个实例,我们可以使用三种CSS选择器来定位和辨别实例中的元素。如下:

后代选择器:[CSS 2.1]: E F
兄弟选择器:[CSS 2.1]: E + F
子元素选择器:[CSS 2.1]: E > F
下面让我们来看看如何不使用class和id而完成对文档中的那些section元素的定位吧:

定位最外层的<section>元素

  考虑到我们的例子并不是一套完整的HTML5代码,所以我们假定在<body>元素下有个<nav>元素与<section>元素是兄弟元素。这样的话,我们就可以向下面代码那样定位最外层的<section>了:

body nav+section {}

定位下一个<section>元素
作为最外层<section>元素下的唯一直属子集元素,这个<section>元素也许可以这样定位:

section>section {}

定位<article>元素
可以定位<article>元素的方法有很多,不过最简单的方法当然就是后代选择器了:

section section article {}

定位<header>、<section>和<footer>元素
这三个元素分别在两个地方都出现过,一是在<article>元素中出现,另一是在<aside>元素中出现。这种差别能让我们轻松定位每个元素。

article header {}
article section {}
article footer {}

或者一起定义:

section section header {}
section section section {}
section section footer {}
到目前为止,我们已经使用CSS2.1选择器排除掉了所有的class和id。那么我们为什么还需要使用CSS3呢?我很高兴你能这么问…