CSS:元素反射 box-reflect
本帖最后由 马黑黑 于 2022-5-28 08:25 编辑box-reflect 属性,与 box-shadow 一样的组词结构,也同样能从字面含义理解属性的作用。reflect有反射之一,box-reflect自然就是元素(盒子)的反射。当前,box-reflect还不能像 box-shadow 那样成为标准属性系列成员,但转正是迟早的事,我们现在要使用它,需要加入前缀便可,比如基于webkit内核的浏览器,我们用 -webkit- 这样的前缀,这些浏览器就会完美识别该属性。
box-reflect 属性能将母元素(盒子)完整反射出去,从效果上看是自身的一个镜像复制。
box-reflect 完整语法需要三个参数:
-webkit-box-reflect: 方向 距离 遮罩;
其中:
参数一(方向):可选值四个,① above(向上反射);② right(向右反射);③ below(向下反射);④ left:向左反射
参数二(距离):与母盒子的距离,比如 0 或 10px,可以省略,缺省值是 0
参数三(遮罩):支持图片和渐变背景遮罩,可以省略此参数,缺省值为无遮罩
应用代码举例:
.reflectImg {
width: 200px;
height: 200px;
-webkit-box-reflect: below 0 linear-gradient(transparent, rgba(255,255,255,.3));
}
<img class="reflectImg" src="图片地址" alt="" />
上述代码中,box-reflect 那句,红色代码是反射方向,紫红色代码是距离,暗红色代码是用的渐变背景做的遮罩。这样设定图片,图片将在下方产生一个倒影。
盒子性质的元素,都可以通过box-reflect来实现反射效果。
每一个盒子只能产生一个方向的镜像反射,当四个方向的镜像反射都设置时,浏览器值呈现最后一个box-reflect。
<style>
.myImg {
margin: 50px auto 0;
border-radius: 0 100%;
-webkit-box-reflect: below 20px linear-gradient(transparent, rgba(255,255,255,.3));
}
</style>
<p>请观察以下效果:</p>
<img class="myImg" src="/uc_server/data/avatar/000/00/71/30_avatar_middle.jpg" alt=""> 二楼效果显示,镜像是反向映射的,但忠实原始形状。 {:4_189:} <p style="text-align: center;"><div> <img style="-webkit-box-reflect: below;" src="/static/image/smiley/hcbiaoqing2/110.gif" alt="" /><p></p></div><div></p><br><br></div><div>以上代码,效果是酱紫,看得出来,box-reflect 还能实现动图的效果:</div><div><br></div><div><br></div>
<p style="text-align: center;">
<img style="-webkit-box-reflect: below;" src="/static/image/smiley/hcbiaoqing2/110.gif" alt="">
</p> 你太厉害了,你会造出一个太阳,在地上哗哗地照射天上的太阳{:4_172:} 转转 发表于 2022-5-28 08:56
你太厉害了,你会造出一个太阳,在地上哗哗地照射天上的太阳
{:5_117:} 醉美水芙蓉 发表于 2022-5-28 09:17
黑黑老师又有新作品啦!谢谢分享!
这不是作品吧,一个简介 这个元素有趣,直接是照镜子的效果呢。
这个貌似和box-shadow还是有很多不同,box-shadow可以把自身投影出去,而且会丢失细节。
box-reflect看起来能很好地保留原来的细节,好像也不需要拉开很多距离,而且是镜像。很神奇的元素{:4_187:} 黑黑总能带来奇迹,感谢{:4_187:} 红影 发表于 2022-5-28 11:12
黑黑总能带来奇迹,感谢
你这个送花的可以弄个面对面或背对背的{:5_117:} 这个太厉害了。做图还可以这样玩。{:4_199:}{:4_199:}
<p style="text-align: center;">
<img style="-webkit-box-reflect: below;" src="https://www.huachaowang.com/uc_server/data/avatar/000/00/71/87_avatar_middle.jpg" alt="" />
</p> 加林森 发表于 2022-5-28 11:35
这个太厉害了。做图还可以这样玩。
对任何可视元素都可以 马黑黑 发表于 2022-5-28 11:41
对任何可视元素都可以
嗯嗯,谢谢老黑!{:4_191:}
页:
[1]