CSS3 倒影
本文主要内容
1. CSS3 倒影简介
2. CSS3 倒影语法
3. CSS3 倒影基本用法
1. CSS3 倒影简介
除了前文所提及的,CSS3还新增了Reflections板块,即允许CSS3进行设计倒影,我们完全可以在不使用PS的情况下,通过代码在WEB端实现。但是, CSS3-reflections目前仅获得webkit引擎的支持,我们只能在谷歌与Safari浏览器中使用。但是别灰心,在未来必然会适用于更多的主流浏览器。
2. CSS3 倒影语法
语法:
- box-reflect:none | <direction> <offset> ? <mask-box-image>
none:此值为box-reflect默认值,表示无倒影效果;
direction:此值表示box-reflect生成倒影的方向,主要包括以下几个值:
above:表示生成的倒影在对象(原图)的上方;
below:表示生成的倒影在对象(原图)的下方;
left:表示生成的倒影在对象(原图)的左侧;
right:表示生成的倒影在对象(原图)的右侧;
offset:用来设置生成倒影与对象(原图)之间的间距,其取值可以是固定的像素值,也可以是百分比值,如:
使用长度值来设置生成的倒影与原图之间的间距,只要是CSS中的长度单位都可以,此值可以使用负值;
使用百分比来设置生成的倒影与原图之间的间距,此值也可以使用负值
mask-box-image:用来设置倒影的遮罩效果,可以是背景图片,也可以是渐变生成的背景图像。
3. CSS3 倒影基本用法
3.1 图片倒影:
下面的示例定义一个简单的倒影样式,倒影的位置我们可以根据实际情况来设置,此处倒影为图片下方。效果图如下:
CSS:
img {
width:200px;
height: 200px;
-webkit-box-reflect:below;
}
<img src="2017.1.23-1.jpg"/>
ps: 如果倒影在图片上方,且没有预留一定的空间,将无法看见。我们可以给父级设置一个pading-top值便可见。
为倒影设置边距:
边距offset取值可以是长度值(px、em或rem),也可以是百分比,还可以是负值
我们在上面的基础上继续改进,为倒影设置距离,向下偏移10像素,效果图如下:
改动的css代码:
-webkit-box-reflect: below 10px;
可以给倒影设置方向和间距之外,还可以设置遮罩效果。一是添加倒影的渐变效果,(如果对CSS3渐变没有了解的可以在公众号中搜索关键字便有详细介绍),二是遮罩层效果。
接下来继续进行改进,设计CSS3渐变倒影,通过渐变遮罩逐渐盖住下面的倒影,制作出渐隐效果。
3.2 渐变效果:
-webkit-box-reflect: below 10px -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0.5, transparent), to(white));
3.3 遮罩层效果:
-webkit-box-reflect: below 0 url(2017.1.23-2.png);
ps: 用于遮罩的图片必须是png格式图片。给生成的倒影添加遮罩效果的时候,如果没有设置显式的间距offset将会让box-reflect失效。也就是说,当box-reflect属性中的mask-box-image属性值出现时,必须显式的设置offset值,如果不需要间距,将其设置为0。
3.4 文字倒影
当然,我们除了可以通过图片设置倒影,也可以为网页上的任何对象设置倒影,下面做个文字本倒影的例子。
代码如下:
p {
font-size: 24px;
color: #39f;
-webkit-box-reflect: below 5px;
}
<p>以匠人之心 –码出多彩程序人生</p>
与图片倒影的初始情况相同,大家可以根据相关参数进行具体设置。
小结:
CSS3倒影并不仅仅局限于图片及文本,网页中的所有对象都可以设置,灵活运用渐变知识可以做出惊人的效果,但CSS3倒影属性目前仅在webkit内核的浏览得到支持。希望本篇文章能给大家带来帮助。
- HTML 教程
- HTML 简介
- html div 标签介绍
- html span 标签介绍
- html a 超链接标签
- HTML Br换行标签介绍
- HTML P段落标签介绍
- HTML br与p标签区别
- Html H 标题标签
- html px em pt长度单位
- HTML form 标签
- HTML radio 单选框
- HTML B 加粗标签
- HTML strong加粗粗体标签
- HTML em 强调标签
- HTML i 斜体标签
- HTML u下划线标签
- HTML s 删除线标签
- Html img 图片标签
- Html上标注sup与下标注sub标签
- HTML nobr 禁止换行标签
- HTML hr 水平线标签
- HTML label 标签
- HTML input 标签
- HTML textarea 标签
- HTML select下拉列表标签
- HTML checkbox 多选框
- HTML font color 标签
- HTML iframe 框架标签
- HTML Table 表格
- HTML dl dt dd 标签
- HTML ol li有序列表标签
- HTML ul li 无序列表标签
- HTML 注释
- CSS 教程
- CSS 简介
- CSS 语法
- CSS Id 和 Class选择器
- CSS 样式的创建
- CSS background 背景介绍
- CSS 文本样式
- CSS font 字体
- CSS A 链接
- CSS ul ol列表样式
- CSS TABLE 样式
- CSS 框模型
- CSS border 边框
- CSS Outlines 轮廓
- CSS 外边距 Margin
- CSS Padding 内边距
- CSS 分组和嵌套选择器
- CSS 尺寸 (Dimension)
- CSS Display 属性
- CSS Position 定位
- CSS Float 浮动
- CSS 水平对齐(Horizontal Align)
- CSS 组合选择符
- CSS 伪类
- CSS 伪元素
- CSS 导航栏
- CSS 下拉菜单
- CSS 图片廊
- CSS 图像透明/不透明
- CSS sprite 图像拼合技术
- CSS 媒体类型
- CSS 属性选择器
- CSS 实例