超简单CSS3实现圆角、阴影、透明效果
2014-08-06 16:14
495 查看
CSS实现圆角,阴影,透明的方法很多,传统的方法都比较复杂,用CSS3就方便很多了,虽然现在各浏览器对CSS3的支持还不是很好,但不久的将来CSS3就会普及.
1.圆角
CSS3实现圆角有两种方法.
第一种是背景图像,传统的CSS每个元素只能有一个背景图像,但是CSS3可以允许一个元素有多个背景图像.这样给一个元素添加4个1/4圆的背景图像,分别位于4个角上就可以实现圆角了.
Html代码
![](https://oscdn.geek-share.com/Uploads/Images/Content/201607/103029ce2151d7b1340257aca0a320f9.png)
.box {
/* 首先定义要使用的4幅图像为背景图 */
background-image: url(/img/top-left.gif),
url(/img/top-right.gif),
url(/img/bottom-left.gif),
url(/img/bottom-right.gif);
/* 然后定义不重复显示 */
background-repeat: no-repeat,
no-repeat,
no-repeat,
no-repeat;
/* 最后定义4幅图分别显示在4个角上 */
background-position: top left,
top right,
bottom left,
bottom right;
}
第二种方法就简洁了,直接用CSS实现,不需要用图片.
Html代码
![](https://oscdn.geek-share.com/Uploads/Images/Content/201607/103029ce2151d7b1340257aca0a320f9.png)
.box {
/* 直接定义圆角的半径就可以了 */
border-radius: 1em;
}
但是第二种方法还没有得到很好的支持,当前Firefox和Safari(同一个核心的Chrome也可以),需要使用前缀
Html代码
![](https://oscdn.geek-share.com/Uploads/Images/Content/201607/103029ce2151d7b1340257aca0a320f9.png)
.box {
-moz-border-radius: 1em;
-webkit-border-radius: 1em;
border-radius: 1em;
}
2.阴影
CSS3的box-shadow属性可以直接实现阴影
Html代码
![](https://oscdn.geek-share.com/Uploads/Images/Content/201607/103029ce2151d7b1340257aca0a320f9.png)
img {
-webkit-box-shadow: 3px 3px 6px #666;
-moz-box-shadow: 3px 3px 6px #666;
box-shadow: 3px 3px 6px #666;
}
这个属性的4个参数是:垂直偏移,水平偏移,投影的宽度(模糊程度),颜色
3.透明
CSS本来就是支持透明的,IE以外的浏览器是opacity属性,IE是filter:alpha.但是,这个透明度有个缺点,就是它会使应用元素的内容也会继承它,比如有一个DIV,
Html代码
![](https://oscdn.geek-share.com/Uploads/Images/Content/201607/103029ce2151d7b1340257aca0a320f9.png)
<div style="opacity:0.8;filter:alpha(opacity=80); font-weight: bold;">>
内容
</div>
如果像上面这样DIV的背景是透明了,但是内容两个字也透明了,这时可以用RGBa.
Html代码
![](https://oscdn.geek-share.com/Uploads/Images/Content/201607/103029ce2151d7b1340257aca0a320f9.png)
.alert {
rgba(0,0,0,0.8);
}
这个属性前3个属性表示颜色红,绿,蓝,第四个是透明度.红绿蓝都是0代表黑色,所以rgba(0,0,0,0.8)就是将黑色的透明度设置为0.8.
CSS3使得原来很难实现的效果变得很简单,希望各浏览器对CSS3尽快实现完美支持.
推荐个编程人生 网,里面的开发感悟很不错。
1.圆角
CSS3实现圆角有两种方法.
第一种是背景图像,传统的CSS每个元素只能有一个背景图像,但是CSS3可以允许一个元素有多个背景图像.这样给一个元素添加4个1/4圆的背景图像,分别位于4个角上就可以实现圆角了.
Html代码
![](https://oscdn.geek-share.com/Uploads/Images/Content/201607/103029ce2151d7b1340257aca0a320f9.png)
.box {
/* 首先定义要使用的4幅图像为背景图 */
background-image: url(/img/top-left.gif),
url(/img/top-right.gif),
url(/img/bottom-left.gif),
url(/img/bottom-right.gif);
/* 然后定义不重复显示 */
background-repeat: no-repeat,
no-repeat,
no-repeat,
no-repeat;
/* 最后定义4幅图分别显示在4个角上 */
background-position: top left,
top right,
bottom left,
bottom right;
}
第二种方法就简洁了,直接用CSS实现,不需要用图片.
Html代码
![](https://oscdn.geek-share.com/Uploads/Images/Content/201607/103029ce2151d7b1340257aca0a320f9.png)
.box {
/* 直接定义圆角的半径就可以了 */
border-radius: 1em;
}
但是第二种方法还没有得到很好的支持,当前Firefox和Safari(同一个核心的Chrome也可以),需要使用前缀
Html代码
![](https://oscdn.geek-share.com/Uploads/Images/Content/201607/103029ce2151d7b1340257aca0a320f9.png)
.box {
-moz-border-radius: 1em;
-webkit-border-radius: 1em;
border-radius: 1em;
}
2.阴影
CSS3的box-shadow属性可以直接实现阴影
Html代码
![](https://oscdn.geek-share.com/Uploads/Images/Content/201607/103029ce2151d7b1340257aca0a320f9.png)
img {
-webkit-box-shadow: 3px 3px 6px #666;
-moz-box-shadow: 3px 3px 6px #666;
box-shadow: 3px 3px 6px #666;
}
这个属性的4个参数是:垂直偏移,水平偏移,投影的宽度(模糊程度),颜色
3.透明
CSS本来就是支持透明的,IE以外的浏览器是opacity属性,IE是filter:alpha.但是,这个透明度有个缺点,就是它会使应用元素的内容也会继承它,比如有一个DIV,
Html代码
![](https://oscdn.geek-share.com/Uploads/Images/Content/201607/103029ce2151d7b1340257aca0a320f9.png)
<div style="opacity:0.8;filter:alpha(opacity=80); font-weight: bold;">>
内容
</div>
如果像上面这样DIV的背景是透明了,但是内容两个字也透明了,这时可以用RGBa.
Html代码
![](https://oscdn.geek-share.com/Uploads/Images/Content/201607/103029ce2151d7b1340257aca0a320f9.png)
.alert {
rgba(0,0,0,0.8);
}
这个属性前3个属性表示颜色红,绿,蓝,第四个是透明度.红绿蓝都是0代表黑色,所以rgba(0,0,0,0.8)就是将黑色的透明度设置为0.8.
CSS3使得原来很难实现的效果变得很简单,希望各浏览器对CSS3尽快实现完美支持.
推荐个编程人生 网,里面的开发感悟很不错。
相关文章推荐
- CSS3实现圆角、阴影、透明效果并兼容各大浏览器
- 使用CSS3实现圆角,阴影,透明
- Bootstrap中实现圆角、圆形头像和响应式图片/css3圆角、图片阴影效果总结
- css3 实现圆角边框的border-radius属性和实现阴影效果的box-shadow属性
- css技巧:实现圆角、阴影、透明效果
- CSS3 完美实现圆角效果
- 仿网易聚合新闻 - 超简单实现 - 刷新按钮CSS3旋转效果
- 用CSS3的 box-shadow 来轻松实现图层阴影效果
- 简单使用CSS3实现炫酷读者墙效果
- css3一款3D字体带阴影效果的实现步骤
- 使用IE滤镜实现css3中rgba让背景色透明的效果
- CSS3实现DIV圆角效果完整代码
- CSS3 实现圆角效果
- css3实现渐变、阴影、超出指定文本省略号显示等一些效果
- 使用css3来实现边框圆角效果
- 使用IE滤镜实现css3中rgba让背景色透明的效果
- 用相对定位实现简单的图片边框阴影效果
- js 实现无干扰阴影效果 简单好用(附文件下载)
- css3新功能之(text-shadow实现)CSS3文字阴影效果
- 相对定位实现简单阴影效果