CSS BOX模型

原帖地址 : http://www.cnblogs.com/Wenwang/archive/2011/11/02/2231236.html


1 CSS盒子模型

首先来复习下CSS的box Model,box Model 是CSS+DIV布局的灵魂所在,下面这张图足以说明一切:

ct_boxmodel

元素框的最内部分是实际的内容,直接包围内容的是内边距。内边距呈现了元素的背景。内边距的边缘是边框。边框以外是外边距,外边距默认是透明的,因此不会遮挡其后的任何元素。在CSS3中增加了盒子阴影(box-shadow)。

1.1 box-shadow

盒子的阴影,在CSS2中要实现这效果得用图片,而且还不是很灵活。

语法:box-shadow: h-shadow v-shadow blur spread color inset;

说明:

Value

Description

h-shadow

必需的.水平方向的阴影偏移,可为正负值

v-shadow

必需的.垂直方向的阴影偏移,可为正负值

blur

可选的. 模糊距离

spread

可选的. 阴影大小

color

可选的. 阴影颜色,默认为黑色

inset

可选的. 把阴影从外部阴影改变成内部阴影

实例:

.shadow 1 {
     background-color : #660066 ; width : 200px ; height : 100px ; margin-bottom : 50px ;
     box-shadow: 50px  50px  50px  20px  #9966FF ;
     }
  

2 CSS3 Borders

在CSS3中,我可以定义圆角边框(border-radius),图片边框(border-image),以前想要实现这些效果利用图片,而且相关HTML代码也很复杂,现在只定义相关CSS就能实现这些效果,很期待吧微笑

2.1 border-radius

在CSS2中定义圆角边框是很别扭的,我们需要为每个角定义个图片,

语法:border-radius: 1-4 length|% / 1-4 length|%;

延伸:border-top-right-radius , border-bottom-right-radius , border-bottom-left-radius , border-top-left-radius

说明:

<length>: 由浮点数字和单位标识符组成的长度值,可以是具体数值,也可以是百分比,但不可为负值。第一个值是水平半径,第二个值会默认等于第一个值,这样的话就是四分之一的圆角,第二个值通俗来说就是控制圆角的弧度的。

下面举个实例:

.border 1 {
     width : 150px ; height : 80px ;
     background-color : #6699FF ;
     border : 2px  solid ;
     border-radius: 20px  5px  20px  5px  / 10px  5px  10px  5px ;
}

border-radius: 相关定义可等于

    border-top-left-radius: 20px 10px;
    border-top-right-radius: 5px 5px;
    border-bottom-right-radius: 20px 10px;
    border-bottom-left-radius: 5px 5px;

 

下面再给大家画个圆:

注意:可能一些老版本的浏览对此还得加浏览器前缀,如(-webkit-border-radius:20px 5px 20px 5px / 10px 5px 10px 5px)

2.2 border-image

指定一个图片作为元素的边框,可惜IE9还不支持。

语法:border-image: source slice width outset repeat;

说明:

Value

Description

border-image-source

边框图片的路径

border-image-slice

边框图片的内部定位

border-image-width

边框图片的宽度

border-image-outset

边框图处在box外的延伸,目前所有浏览器还不支持

border-image-repeat

边框图片的重复种类:平铺( rounded ) 拉伸( stretched)

实例: 下面是我边框所用到的图片,从网上找到的 border 相关CSS代码:

.borderimage 1
{
border-width : 15px ; width : 220px ; padding : 10px  20px ;
border-image: url ( 'Images/border.png' ) 30  30  round;
-moz-border-image: url ( 'Images/border.png' ) 30  30  round; /* Firefox */
-webkit-border-image: url ( 'Images/border.png' ) 30  30  round; /* Safari and Chrome */
-o-border-image: url ( 'Images/border.png' ) 30  30  round; /* Opera */
}
border-image-repeat:round
border-image-repeat:stretch

 

2.3 border-color

在Firefox中,对border-color进行了新的扩展,如果你设置了border的宽度是X px,那么你就可以在这个border上使用X种颜色,每种颜色显示1px的宽度。如果说你的border的宽度是10个像素,但是只声明了5或6种颜色,那么最后一个颜色将被添加到剩下的宽度。

接下个写个火狐下的实例:

.bordercolor{
      width : 200px ; height : 60px ; border : 7px  solid  #000 ; padding : 3px  3px  3px  6px ;
      -moz-border-bottom-colors: #006  #33f  #36f  #69f  #9cf  #ccf  ;
      -moz-border-top-colors: #606  #c0c  #f0f  #f6f  #f9f  #fcf ;
      -moz-border-left-colors: #030  #093  #3c3  #6f6  #9f9  #cfc ;
      -moz-border-right-colors: #630  #c90  #ff0  #ff6  #ff9  #ffc ;
}
在Firefox浏览器里能看到边框颜色渐变效果

 

至此,这章的内容写完了,希望这些新CSS效果能给国内网页设计师更多的灵感,创造出更好看的网页来微笑



另外附上常见 html中的块元素(block element)和内联元素(inline element)分类明细:


块元素(block element)

 

◎ address - 地址

◎ blockquote - 块引用

◎ center - 举中对齐块

◎ dir - 目录列表

◎ div - 常用块级容易,也是css layout的主要标签

◎ dl - 定义列表

◎ fieldset - form控制组

◎ form - 交互表单

◎ h1 - 大标题

◎ h2 - 副标题

◎ h3 - 3级标题

◎ h4 - 4级标题

◎ h5 - 5级标题

◎ h6 - 6级标题

◎ hr - 水平分隔线

◎ isindex - input prompt

◎ menu - 菜单列表

◎ noframes - frames可选内容,(对于不支持frame的浏览器显示此区块内容

◎ noscript - 可选脚本内容(对于不支持script的浏览器显示此内容)

◎ ol - 排序表单

◎ p - 段落

◎ pre - 格式化文本

◎ table - 表格

◎ ul - 非排序列表


内联元素(inline element)

◎ a - 锚点◎ abbr - 缩写

◎ acronym - 首字

◎ b - 粗体(不推荐)

◎ bdo - bidi override

◎ big - 大字体

◎ br - 换行

◎ cite - 引用

◎ code - 计算机代码(在引用源码的时候需要)

◎ dfn - 定义字段

◎ em - 强调

◎ font - 字体设定(不推荐)

◎ i - 斜体

◎ img - 图片

◎ input - 输入框

◎ kbd - 定义键盘文

◎ label - 表格标签

◎ q - 短引用

◎ s - 中划线(不推荐)

◎ samp - 定义范例计算机代码

◎ select - 项目选择

◎ small - 小字体文本

◎ span - 常用内联容器,定义文本内区块

◎ strike - 中划线

◎ strong - 粗体强调

◎ sub - 下标

◎ sup - 上标

◎ textarea - 多行文本输入框

◎ tt - 电传文本

◎ u - 下划线

◎ var - 定义变量


可变元素

可变元素 为根据上下文语境决定该元素为块元素或者内联元素。

 

◎ applet - java applet

◎ button - 按钮

◎ del - 删除文本

◎ iframe - inline frame

◎ ins - 插入的文本

◎ map - 图片区块(map)

◎ object - object对象

◎ script - 客户端脚本


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值