css3有哪些新特性?包含哪些模块?

html-css012

css3有哪些新特性?包含哪些模块?,第1张

第 1 选择器

第 2 RGBA和透明度

第 3 多栏布局

第 4 多背景图

第 5 Word Wrap

第 6 文字阴影

第 7 @font-face属性

第 8 圆角(边框半径)

第 9 边框图片

第 10 盒阴影

第 11 盒子大小

第 12 媒体查询

第 13 语音

1、CSS3圆角表格圆角表格,对应属性:border-radius。

2、以往对网页上的文字加特效只能用filter这个属性,这次CSS3中专门制订了一个加文字特效的属性,而且不止加阴影这种效果。对应属性:font-effect。

4、在文字下点几个点或打个圈以示重点,CSS3也开始加入了这项功能,这应该在某些特定网页上很有用。对应属性:font-emphasize-style和font-emphasize-position。

边框(Borders)

border-color:控制边框颜色,并且有了更大的灵活性,可以产生渐变效果;

border-image:控制边框图象 CSS3边框border-corner-image:控制边框边角的图象;

border-radius:能产生类似圆角矩形的效果。

背景(Backgrounds)

background-origin:决定了背景在盒模型中的初始位置,提供了3个值,border, padding和content。

border:控制背景起始于左上角的边框;

padding:控制背景起始于左上角的留白;

content:控制背景起始于左上角的内容 CSS3背景background-clip:决定边框是否覆盖住背景(默认是不覆盖),提供了两个值,border和padding。

border:会覆盖住背景;

padding:不会覆盖背景;

background-size:可以指定背景大小,以象素或百分比显示。当指定为百分比时,大小会由所在区域的宽度、高度,以及background-origin的位置决定。

multiple backgrounds:多重背景图象,可以把不同背景图象只放到一个块元素里。

文字效果(Text effects)

text-shadow:文字投影,可能是因为MAC OSX的Safari浏览器开始支持投影才特意增加的。

text -overflow:当文字溢出时,用“…”提示。包 CSS3文字效果括ellipsis、clip、ellipsis-word、inherit,前两个CSS2就有了,目前还是部分支持,但有趣的是IE6居然也支持。ellipsis-word可以省略掉最后一个单词,对中文意义不大,inherit可以继承父级元素。

颜色(Color)

HSL colors:除了支持RGB颜色外,还支持HSL(色相、饱和度、亮度)。以前一般都是作图的时候用HSL色谱,但这样一来会包括更多的颜色。H用度表示,S和L用百分比表示,比如hsl(0,100%, 50%)

HSLA colors:加了个不透明度(Apacity),用0到1之间的数来表示,比如hsla(0,100%,50%,0.2)

opacity:直接控制不透明度,用0到1之间的数来表示。

实现这样的效果非常简单,设置颜色的时候我们使用标准的rgba()单位即可,例如rgba(255,0,0,0.4)这样就出现了一个红色同时拥有alpha透明为0.4的颜色。

经过测试firefox3.0、safari3.2、opera10都支持了rgba单位。

用户界面(User-interface)

resize:可以由用户自己调整div的大小,有horizontal(水平)vertical(垂直)或者both(同时),或者同时调整。如果再加上max-width或min-width的话还可以防止破坏布局。

选择器(Selectors)

CSS3增加了更多的CSS选择器,可以实现更简单但是更强大的功能,比如:nth-child()等。

其它模块:

(Other modules)

media queries:感觉叫媒体选择比较合适,可以为网页中不同的对象设置不同的浏览设备。比如可以为某一块分别设置屏幕浏览样式和手机浏览样式,以前则只能设置整个网页。

multi-column layout:多列布局,让文字以多列显示,包括column-width、column-count、column-gap三个值。

column-width:指定每列宽度

column-count:指定列数

column-gap:指定每列之间的间距

column-rule-color:控制列间的颜色

column-rule-style:控制列间的样式

column-rule-width:控制列间的宽度

column-space-distribution:平均分配列间距。

第一步:编辑菜单的HTML代码。

菜单包含三个列表项,分别取名为“Menu1”、“Menu2”、“Menu3”。

XML/HTML Code

<div class="css3Menus">      

<ul>      

   <li>Menu1</li>      

   <li>Menu2</li>      

   <li>Menu3</li>      

</ul>      

</div>

第二步:设置菜单的背景。

在该步骤中,把导航的背景设置为黑色。宽度、高度和内边距为可选项,可以不设置。

CSS Code

.<span style="width: auto height: auto float: none" id="4_nwp"><a style="text-decoration: none" mpid="4" target="_blank" href="http://cpro.baidu.com/cpro/ui/uijs.php?adclass=0&app_id=0&c=news&cf=1001&ch=0&di=128&fv=0&is_app=0&jk=e2fbae28688be8a0&k=css3&k0=css3&kdi0=0&luki=10&n=10&p=baidu&q=06011078_cpr&rb=0&rs=1&seller_id=1&sid=a0e88b6828aefbe2&ssp2=1&stid=0&t=tpclicked3_hc&tu=u1922429&u=http%3A%2F%2Fwww%2Eadmin10000%2Ecom%2Fdocument%2F2453%2Ehtml&urlid=0" id="4_nwl"><span style="color:#0000fffont-size:14pxwidth:autoheight:autofloat:none">css3</span></a></span>Menus {      

background: #14080a      

width:506px      

height:260px      

padding:20px      

}

如下图:

第三步:利用border-radius,制作圆形导航。

该步中,利用CSS3的一些酷的功能,尤其是border-radius ,将每个列表项的背景设置为黄色,形状为圆形。

CSS Code

ul {      

list-style: none      

}      

   

li {      

float:left      

font: 14px/10px Arial, Verdana, sans-serif      

color:#FFF      

background-color:#CCCC00      

width: 80px      

height: 80px      

padding:20px      

margin:0 30px 0 0      

-webkit-border-radius: 60px      

-moz-border-radius: 60px      

border-radius: 60px      

}

菜单看起来呈下面样子:

第四步:设置菜单的对齐方式。

本步骤中,将为每个列表项设置特定的背景颜色与位置:

CSS Code

li#menu1 {      

background-color: #00FFCC      

}      

li#menu2 {      

background-color: #CC9900      

margin-top:100px      

}      

li#menu3 {      

background-color: #33FF66      

margin-top:50px      

}

现在菜单看起来呈下面样子:

第五步:设置菜单中链接的对齐方式。

CSS Code

li a {      

color:#FFF      

text-decoration:none      

display:<span style="width: auto height: auto float: none" id="2_nwp"><a style="text-decoration: none" mpid="2" target="_blank" href="http://cpro.baidu.com/cpro/ui/uijs.php?adclass=0&app_id=0&c=news&cf=1001&ch=0&di=128&fv=0&is_app=0&jk=e2fbae28688be8a0&k=block&k0=block&kdi0=0&luki=7&n=10&p=baidu&q=06011078_cpr&rb=0&rs=1&seller_id=1&sid=a0e88b6828aefbe2&ssp2=1&stid=0&t=tpclicked3_hc&tu=u1922429&u=http%3A%2F%2Fwww%2Eadmin10000%2Ecom%2Fdocument%2F2453%2Ehtml&urlid=0" id="2_nwl"><span style="color:#0000fffont-size:14pxwidth:autoheight:autofloat:none">block</span></a></span>      

width: 80px      

height: 45px text-align: center      

padding:35px 0 0 0      

margin:0 40px 0 0      

-webkit-border-radius: 40px      

-moz-border-radius: 40px      

border-radius: 40px      

}      

li#menu1 a {      

background-color: #FF0000      

}      

li#menu2 a {      

background-color: #660033      

}      

li#menu3 a {      

background-color: #66CCCC      

}

菜单现阶段的样子:

第六步:定义另一种效果,当鼠标悬浮在链接上时进行展现。 

CSS Code

li a:hover,      

li a:focus,      

li a:active {      

width: 120px      

height:65px      

padding:55px 0 0 0      

margin:-20px 0 0 -20px      

-webkit-border-radius: 60px      

-moz-border-radius: 60px      

border-radius: 60px      

}

菜单样式如图:

第七步:最后为导航增加动画效果。

CSS Code

li a:hover,      

li a:focus,      

li a:active {      

-webkit-animation-name:bounce      

-webkit-animation-duration:1s      

-webkit-animation-iteration-count:4      

-webkit-animation-direction:alternate      

}      

@-webkit-keyframes bounce{<span style="width: auto height: auto float: none" id="1_nwp"><a style="text-decoration: none" mpid="1" target="_blank" href="http://cpro.baidu.com/cpro/ui/uijs.php?adclass=0&app_id=0&c=news&cf=1001&ch=0&di=128&fv=0&is_app=0&jk=e2fbae28688be8a0&k=from&k0=from&kdi0=0&luki=2&n=10&p=baidu&q=06011078_cpr&rb=0&rs=1&seller_id=1&sid=a0e88b6828aefbe2&ssp2=1&stid=0&t=tpclicked3_hc&tu=u1922429&u=http%3A%2F%2Fwww%2Eadmin10000%2Ecom%2Fdocument%2F2453%2Ehtml&urlid=0" id="1_nwl"><span style="color:#0000fffont-size:14pxwidth:autoheight:autofloat:none">from</span></a></span>{margin:0 40px 0 0}      

to{margin:120px 40px 0 0}      

}

菜单所产生的动画效果: