CSS布局基础汇总

常见布局种类

一列布局

  • 自上而下的,一般头部进行固定宽度,高度设置为自动

两列布局

  • 自适应的两列布局:width用百分比+float;
  • 固定宽度的两列布局:width:具体值/父级元素的宽度确定,width+百分比;+float;
    如果没有加float的话,不能实现并排的两列布局。

三列布局

  • 传统的三列布局依托于float实现
  • 特殊的三列布局:左右固定,中间自适应情况,左右使用绝对定位来实现,中间用margin实现.
    三列布局:左侧和右侧固定,中间自适应:

CSS中的定位机制

  1. 标准文档流
  2. 浮动
  3. 绝对定位

网页简单布局之结构与表现的原则

  • 最大化的简化html的结构,然后用css进行设置,减少html与css的契合度
  • 不应该为了样式而添加无意义的标签
  • 结构与表现分离,结构简洁,构建结构不考虑布局样式

CSS元素隐藏

{ display: none; /* 不占据空间,无法点击 */ }
{ visibility: hidden; /* 占据空间,无法点击 */ }
{ position: absolute; clip:rect(1px 1px 1px 1px); /* 不占据空间,无法点击 */ }
{ position: absolute; top: -999em; /* 不占据空间,无法点击 */ }
{ position: relative; top: -999em; /* 占据空间,无法点击 */ }
{ position: absolute; visibility: hidden; /* 不占据空间,无法点击 */ }
{ height: 0; overflow: hidden; /* 不占据空间,无法点击 */ }
{ opacity: 0; filter:Alpha(opacity=0); /* 占据空间,可以点击 */ }
{ position: absolute; opacity: 0; filter:Alpha(opacity=0); /* 不占据空间,可以点击 */ }

CSS中清除浮动最优方法

在父级添加 overflow:hidden
优点:不存在结构和语义化问题,代码量极少
缺点:内容增多时候容易造成不会自动换行导致内容被隐藏掉,无法显示需要溢出的元素

父元素也设置浮动(加个float:left/right)
优点:不存在结构和语义化问题,代码量极少
缺点:使得与父元素相邻的元素的布局会受到影响,不可能一直浮动到body,不推荐使用

父元素设置 display:table
优点:结构语义化完全正确,代码量极少
缺点:盒模型属性已经改变,由此造成的一系列问题,得不偿失,不推荐使用

使用 :after 伪元素
优点:需要注意的是 :after 是伪元素,不是伪类(某些CSS手册里面称之为“伪对象”),很多清除浮动大全之类的文章都称之为伪类,不过csser要严谨一点,这是一种态度。
由于IE6-7不支持:after,使用 zoom:1 触发 hasLayout。
缺点:兼容性不是很好。

在浮动的元素后面添加空标签

清除浮动
优点:简单明了
缺点:无意义的空标签,不利于语义化

DIV+CSS规范命名集合

命名规范说明
1)、所有的命名最好都小写
2)、属性的值一定要用双引号("")括起来,且一定要有值如class="divcss5",id="divcss5"
3)、每个标签都要有开始和结束,且要有正确的层次,排版有规律工整
4)、空元素要有结束的tag或于开始的tag后加上"/"
5)、表现与结构完全分离,代码中不涉及任何的表现元素,如style、font、bgColor、border等
6)、定义,应遵循从大到小的原则,体现文档的结构,并有利于搜索引擎的查询。
7)、给每一个表格和表单加上一个唯一的、结构标记id
8)、给图片加上alt标签
9)、尽量使用英文命名原则
10)、尽量不缩写,除非一看就明白的单词

DIV+CSS命名参考表

CSS样式命名说明CSS文件命名说明
#wrapper页面外围控制整体布局宽度master.css,style.css主要的
#container或#content容器,用于最外层module.css模块
#layout布局base.css基本公用
#head,#header页头部分layout.css布局,版面
#foot,#footer页脚部分themes.css主题
#nav主导航columns.css专栏
#subnav二级导航font.css文字、字体
#menu菜单forms.css表单
#submenu子菜单mend.css补丁
#sideBar侧栏print.css打印
#sidebar_a,#sidebar_b左边栏或右边栏
#main页面主体
#tag标签
#msg#message提示信息
#tips小技巧
#vote投票
#friendlink友情连接
#title标题
#summary摘要
#loginbar登录条
#searchInput搜索输入框
#hot热门热点
#search搜索
#search_output搜索输出和搜索结果相似
#searchBar搜索条
#search_results搜索结果
#copyright版权信息
#branding商标
#logo网站LOGO标志
#siteinfo网站信息
#siteinfoLegal法律声明
#siteinfoCredits信誉
#joinus加入我们
#partner合作伙伴
#service服务
#regsiter注册
#arr/arrow箭头
#guild指南
#sitemap网站地图
#list列表
#homepage首页
#subpage二级页面子页面
#tool,#toolbar工具条
#drop下拉
#dorpmenu下拉菜单
#status状态
#scroll滚动
.tab标签页
.left.right.center居左、中、右
.news新闻
.download下载
.banner广告条(顶部广告条)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

crper

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值