php 分析css,详细分析关于CSS3中新增的特性

注:由于CSS3的新特性较多,所以分两篇博文来说明。第一篇主要包括新的选择器、文字及块阴影、多背景图、颜色渐变、圆角等。第二篇主要细说CSS3的各种动画效果,如:旋转、移动、缩放等,还包括图标字体的应用。

CSS3属性选择器:

a[href$=‘.pdf’] 表示 href属性中以.pdf结尾的被选中

a[href^=‘mailto’] 表示href属性中以mailto开头的被选中

a[href*=‘item’] 表示href属性中含有item的都被选中

其中a只是指代元素标签

现有三个p,他们的属性name的值各不同:

6a5e4495e7c1db8866ff6d01b9032c2a.png

样式如下:

4d9ee07faeda5e5edb39753cfdfbddad.png

加入选择器:

d1ba01321ef1770879f2616a7be749b1.png

效果:

cae4262e4e4873b02faa36c22597c4bb.png

再加入一属性选择器:

6f7df78524adfa1ac16cbf9cade26da5.png

效果:

4998a45328f6f16dc6de16a7e5c40b60.png

选择器的用法相信大家已经比较熟练了,这里也比较简单就不再赘述了。这种属性选择器比较多用在href属性中,通过载入文件名的不同后缀名来做出相应的选择,如:.jpg .png .gif等等。

CSS3伪类选择器:

现有一表格如下:

c9a5f57ea3ce43247e157e020ab0941d.png

加入伪类选择器:

604658094db831135dbc06dda9ae558d.png

:nth-of-type可以通过参数来选择表格的奇数行或偶数行,odd代表奇数行,even代表偶数行。

效果:

0549d45dfa582a0f5d65a43f0b835794.png

1d658a2946f822c572cbd8deb64e60d8.png

:nth-child伪类,同样是用来选择行。参数为n时选中所有行,参数为n+i时表示从第i行开始下面的都被选中,2n表示2的倍数行被选中,即偶数行,3n表示3的倍数行被选中。

效果:

de882254f3c624bcdec345f591f96b1c.png

n+i:

17b3c664c484c39368157ce6a993b824.png

8c4a2842ab58f4b27382f8840599fcf6.png

2n:

f2676ce6505d4bf92feadf95b35ba6d2.png

8dc915ee27b6191cbda6a539f1fb1349.png

3n:

b7144c848d84f9e2fa12c343050a5f99.png

2ec2962abca6753f1d3ca60d21145271.png

还有一个:nth-last-child()伪类,用法和nth-child基本一致,只是所有规则都是从下往上数的,就相当于把表倒个个。这里也没必要多说了,有兴趣的读者可以自己试下。

多背景图:

CSS3中backgroud-image可以设置多个背景图,还可以设置每个背景图的位置。

c4e06165a446e805463b2aaa265bae34.png

每个背景图有四个参数,1.url地址 2.上下位置,包括top center bottom,也可用百分比 3.左右位置,包括left center right,也可用百分比

4.重复方式,包括no-repeat repeat-y repeat-x。很好理解,就是不平铺、纵向平铺、横向平铺。

(这里偷个懒没截图,读者们可以拿自己喜欢的图片尝试下)

----------------------------------------------------------------------------我是分割线------------------------------------------------------------------

从这里开始就要注意了,由于不同内核的浏览器对CSS3的支持程度是不同的,所以之后的所有特性均要加上前缀。

在下面的例子中,博主为了节省时间没有加前缀或只加了-webkit-前缀。

具体写法如下:

659bf330f69287ae68d79c40fc732abf.png

-webkit-:webkit核心的浏览器,也就是谷歌的Chrome浏览器;

-moz-:Gecko核心的浏览器;

-o-:Opera浏览器;

-ms-:微软的IE浏览器。

虽然一个简单的样式就要写五遍,但做好网页的兼容性本就是前端工程师的职责。下面每一个特性在实际编写网页时均要按照示例来写,包括第二篇博文中的动画特性。

文字阴影:

这里先写一个h1标签,内容是我老师喜欢用的一句话,大家不要吐槽了...

225ef4e148ed550f1622ac7395ea242f.png

写法:

0c056692fcc7958dec8b0813395517ed.png

文字阴影包括4个参数,1.横向偏移量 2.纵向偏移量 3.模糊半径(数值越高越模糊,反之越清晰)4.阴影颜色

效果:

d2085e6bc38a874015ff4723a8fbb840.png

设置较大的偏移量可以产生漂浮并有投影的效果:

5e4df4251cabfc3821a6d9f4d89e300d.png

像不像有光打下来?

3d1fb2b5d80333be3135ac55e1e24f48.png

设置多个阴影,用逗号隔开。模糊半径逐渐增大,产生辉光效果。

64b8b470a9c8cdadb81e99f2099613cf.png

灯箱的感觉

111b2e1735acbfa3d98603a0e0c88cbf.png

设置多个阴影,偏移方向各不相同,设置合适的颜色产生浮雕效果。

29ae3db57c2eed8b89ed0afda9b2621e.png

7c99bcc23df00f5a35c40edbb1b8ac35.png

块级阴影:

块阴影可以应用于许多块级元素上

现给一p加上块阴影:

535e10be378acc13e5e938f76c67883b.png

效果:

01a62ed11ec4343a8f0ac88d68536164.png

box-shadow有6个参数。1.投影方式(可选),不写默认外部阴影,

内阴影效果:

99933e8d816c356d4795dc6f03b82314.png

现有一红色圆形:

e6f92e930b27c0c9e5ebe9d0319cd6e0.png

加上多级块阴影,扩展半径逐渐增大:

7cf105730d9dc51c4328edd65533997c.png

太阳就出来了

0a9342ff8ff092d98a22fbce73672b47.png

圆角:

圆角这一特性应用非常广泛,还可以用圆角来画圆形。

应用于p上:

2b4ae4e25da04203cc58367940e47f2c.png

效果:

20acafaac87e5522964cfea46e800d21.png

border-radius参数可以是1到4个:

1个参数表示四个角都应用该值;

2个参数表示左上、右下用第一个值,右上、左下用第二个值;

3个参数表示左上用第一个值,右上、左下用第二个值,右下用第三个值;

4个参数表示四个值依次用在左上、右上、右下、左下(逆时针)。

一般1个和4个参数用的较多,其他的有点蛋疼。

四个参数:

cc9143f0fc9e3e10aee1e119eef66a5a.png

效果:

3fdfa19e5558788ededc8393f11cb72e.png

这样的圆角怎么做?

ba4c7e6e240918c5b69891d704adc293.png

很简单,只需要让圆角的值等于这个p块高度的一半即可:

88b7226b43fcb6eab29fe7653c643734.png

引申出用圆角画圆:

先建一正方形p块,让其圆角值大于等于其边长的一半即可,上面例子中的太阳就是按此方法做出的。

渐变:

渐变分为两种:线性渐变、径向渐变

线性渐变:

96e04c11cb5f70d5e94294189fb3c960.png

由于绘制渐变时,会被浏览器解析成为一张背景图片,所以做渐变时要用到backgroud-image。

渐变第一个参数为起始位置:left表示从左到右 top表示从上到下,以此类推。之后可以设置多个颜色,颜色后可以设置渐变的起始位置(用百分比)。

效果:

413a34d6d91588acb36e9ecb8e3b4c97.png

径向渐变,顾名思义,是按圆的半径方向渐变:

e5707729dfab4d56b82f93be11d3ffc3.png

center表示从中心开始渐变

2f0c579c4bf7d5f73fbad2c125c879a0.png

又一个太阳出来了,注意这可不是用阴影做的,而是径向渐变。

【相关推荐】

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值