web前端开发中如何实现背景虚化但内容清晰且自适应

小编给大家分享一下web前端开发中如何实现背景虚化但内容清晰且自适应,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

先看效果:

web前端开发中如何实现背景虚化但内容清晰且自适应

以下为具体实现:

<!DOCTYPEhtml>
<htmllang="en">
<head>
<metacharset="UTF-8">
<title>背景虚化</title>
</head>
<body>
<divclass="main">
<!--以下为背景虚化,其他内容清晰-->
<!--内容层-->
<divclass="banner">
<divclass="banner-contain">
<h2>我是内容</h2>
</div>
<!--背景层-->
<divclass="banner-bg"></div>
</div>
</div>
<style>
.main{
width:100%;
}
.banner{
width:100%;
position:relative;
}
.banner-bg{
width:100%;/*宽度铺满屏幕*/
padding-top:52.734%;/*图片高度除以宽度,得到此值*/
background:url("test.jpg")centercenterno-repeat;/*两个center分别为水平和垂直方向的对齐方式*/
background-size:100%;/*背景水平铺满*/
filter:blur(10px);/*虚化值,越大越模糊*/
}
.banner-contain{
position:absolute;/*设置内容层绝对定位*/
width:100%;
text-align:center;
z-index:6;/*将内容至于上层*/
margin-top:6%;
}
</style>
</body>
</html>

1.自适应的实现:

设置div标签padding-top为百分比,padding和margin百分比值是依据宽度计算的而非屏幕高度,所以可以依此设置一个自适应的区域,比如图片信息如下

web前端开发中如何实现背景虚化但内容清晰且自适应

那么高宽比例为:540/1024 大概为52.734%,也就是高度为宽度的52.734%,这里宽度设置为100%,那么宽度的padding-top即为52.734%*100%

2.背景虚化内容清晰的实现:

设置两个层,一个是背景虚化层,自适应撑起整个外层div容器,通过filter:blur()属性设置虚化值,另一个为内容层,绝对定位,设置z-index提高内容层层次防止被遮挡,这样内容层不受虚化影响

以上是“web前端开发中如何实现背景虚化但内容清晰且自适应”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注恰卡编程网行业资讯频道!

发布于 2021-05-30 14:07:09
收藏
分享
海报
0 条评论
249
上一篇:CSS选择器如何实现字段 下一篇:HTML5中如何实现Web Notification桌面通知功能
目录

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码