当前位置:文档之家› 彻底弄懂CSS盒子模型5定位

彻底弄懂CSS盒子模型5定位

彻底弄懂CSS盒子模型5定位
彻底弄懂CSS盒子模型5定位

在本人上一篇教程《彻底弄懂CSS盒子模式四(绝对定位和相对定位)》中最后有演示一个综合导航实例,那时因为时间关系,同时本人也觉得有必要将这实例分出来单独讲一下,所以没有把实例讲解教程写到上一篇教程中。这个教程可以作为CSS定位学习的强化练习,当然教程我也不只是单一的讲解做的步骤,还会和大家一起来分析一下设计思路,同时分享本人在做的过程中发现的一些问题供大家防范参考。为了兼顾一下没有来得及看我上一篇教程的网友,我再次给出代码运行框,大家可以先运行看看效果,不过建议最好先看一下本人上一篇教程,除非你已对定位有所了解。另外本实例还是不够完善的,比如结构的规范等等,如果你能有更好的实现方法,不妨在回复中写出来与大家分享,同时也让我这个积极的菜鸟学习下。

运行代码框

[Ctrl+A 全部选择提示:你可先修改部分代码,再按运行]

一、实例实现功能介绍

本实例为一个栏目链接列表,鼠标移动到链接所在行,链接文本颜色会改变,同时会在链接右下侧显示一个与链接相干的信息面板,信息面板中左边有一幅图片,图片右侧又有三项说明,它们分别是“歌名”、“歌手”、“介绍”。这个栏目被重定位到其它地方,效果、位置不会发生改变,全程只用CSS+DIV实现,无任何脚本。

实例效果截图

二、结构和样式代码

1.结构

最新单曲

2.样式

*{

margin:0px;

padding:0px;

}

body {

margin:10px;

font-size: 13px;

}

a:link {

color: #666;

text-decoration: none;/*去除链接下划线*/

}

a:visited {

color: #666;

text-decoration: none;

}

a:hover {

color: #F90;

}

h3 {

color: #FFF;

background-color: #F90;

width: 100px;

padding-top:3px;

text-align:center;

}

ul {

width: 300px;

border-top: 1px solid #F60;/*使其上边有一线条,与标题h3吻合*/

}

ul li {

padding:5px;

border-bottom: 1px solid #CCC;

list-style:none;/*去除列表样式,这对于标准浏览器很重要*/

}

a {

position: relative;/*设置其定位方法为相对定位,等一下内部信息面板就可以相对它定位*/

display:block;/*让链接以块状呈现,这样不用点中链接文字就可以响应链接*/ }

a div {

display: none;/*初始化信息面板不显示*/

}

a:hover {background:#fff;}/*IE7以下版本A状态伪类bug*/

a:hover div {

position: absolute;

padding:5px;

display:block;

width: 245px;/*只给出宽度,高让它随内容多少自动调整*/

left:150px;/*这是相对父级A的定位*/

top: 20px;

border: 1px solid rgb(91,185,233);

background-color: rgb(228,246,255);

z-index:999;/*把信息面板提到一个较高的位置,使链接文字过长时不会与面板重叠,但这只对FF有效*/

}

a img {

width:80px;

height:80px;

border:none;/*去除图片边框,默认情况下,链接内的图片在标准浏览器会出现边框*/

display:block;

position: absolute;/*用绝对定位抽离正常文本流,不然在设计的时候考虑到不同浏览器正常显示会更麻烦*/

top:5px;/*这里的5px是与信息面板大盒子的填充一样的*/

left:5px;

}

dl {

width: 160px;

float:right;

color: #999;

line-height:20px;

}

dl dd span {

font-weight: bold;

color: #639;

CSS3——盒子模型

在浏览器上运行得网页实际上就是一份HTML文件,这份文件得主体则就是由多个HTML标签所组成, 网页在显示这些标签得时候,会使用盒子模型来计算这些标签该如何显示在网页上。盒子模型得定义里,每个显示在网页上得标签都就是一个矩形对象,这些矩形对象包含了各种显示样式,在浏览器显示网页给用户时,会依照这些显示样式,来决定网页上标签得面积、边距、位置等显示外观。 另外,盒子模型中得矩形对象都包含了一个内容区域,这个内容区域能够容纳其她得矩形对象,盒子模型通过这样一层套一层得方式,将树状结构得标签,展开成为树状结构得矩形对象、浏览器在显示网页给用户时,会依照这个树状结构得矩形对象,来决定矩形对象之间会互相影响得显示外观。 矩形对象得主要得几个样式如下: 1。外边距(margin):定义了矩形对象与其她矩形对象之间得距离,包括矩形对象与内容区域之间得距离、同一个内容区域内相邻得两个矩形对象之间得距离。 (1)margin得属性内容可以设置为长度、百分比、auto等属性、当设置为百分比时,会依照父矩形对象得内容区域大小来作为百分比得计算基数;

当设置为auto时,浏览器会参照矩形对象本身、父矩形对象、定位样式等得样式,由浏览器自动配置矩形对象得外边距大小、 (2)外边距合并功能:上下两个相邻得矩形对象之间得外边距会合并,合并后得外边距会以较大得数值作为设置值。 2。边框(border):定义边框得框线样式与框线粗细,还有颜色。

3.内边距(padding):内边距定义内容区域与边框之间得距离。同样得,其属性值可以就是长度、百分比(同外边距)等。

4。宽度与高度(width、height):定义盒子模型得内容区域得大小,其属性可以就是长度、百分比与auto等。

CSS盒子模型

CSS基础-盒模型 盒模型 边框属性 ?什么边框? ?边框就是环绕在标签宽度和高度周围的线条 ?边框属性的格式 ?连写(同时设置四条边) ?border: 边框的宽度边框的样式边框的颜色; ?示例代码 ? ? bd+ border: 1px solid #000; ?注意点: ?连写格式中颜色属性可以省略, 省略之后默认就是黑色?连写格式中样式不能省略, 省略之后就看不到边框了?连写格式中宽度可以省略, 省略之后还是可以看到边框?按方向连写(分别设置四条边) ? border-top: 边框的宽度边框的样式边框的颜色;

? border-right: 边框的宽度边框的样式边框的颜色; ? border-bottom: 边框的宽度边框的样式边框的颜色; ? border-left: 边框的宽度边框的样式边框的颜色; ?示例代码 ? ? bt+ border-top: 1px solid #000; ? br+ border-right: 1px solid #000; ? bb+ border-bottom: 1px solid #000; ? bl+ border-left: 1px solid #000; ?按要素连写(分别设置四条边) ? border-width: 上右下左; ? border-style: 上右下左; ? border-color: 上右下左; ?示例代码