前端页面背景虚化及自适应的效果怎么实现
Admin 2022-07-18 群英技术资讯 446 次浏览
讲干货,不啰嗦,有时候前端会遇到背景虚化但要求内容清晰的需求,先看效果:
以下为具体实现:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>背景虚化</title> </head> <body> <div class="main"> <!-- 以下为背景虚化,其他内容清晰--> <!-- 内容层--> <div class="banner"> <div class="banner-contain"> <h1>我是内容</h1> </div> <!-- 背景层--> <div class="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")center center no-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百分比值是依据宽度计算的而非屏幕高度,所以可以依此设置一个自适应的区域,比如图片信息如下
那么高宽比例为:540/1024 大概为52.734%,也就是高度为宽度的52.734%,这里宽度设置为100%,那么宽度的padding-top
即为52.734%*100%
2.背景虚化内容清晰的实现:
设置两个层,一个是背景虚化层,自适应撑起整个外层div容器,通过filter:blur()
属性设置虚化值,另一个为内容层,绝对定位,设置z-index提高内容层层次防止被遮挡,这样内容层不受虚化影响
总结
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
css3设置动画匀速的属性单词是哪个animation-timing-function 规定动画的速度曲线。速度曲线定义动画从一套 CSS 样式变为另一套所用的时间。速度曲线用于使变化更为平滑。
HTML中相对位置与绝对位置是怎样,怎么使用?一些朋友可能会遇到这方面的问题,对此在下文小编向大家来讲解一下,内容详细,易于理解,希望大家阅读完这篇能有收获哦,有需要的朋友就往下看吧!
今天给大家分享的是关于用CSS实现简单的波浪效果的内容,如果是纯 CSS 实现波浪效果还是比较困难的,而本文使用 CSS 实现的波浪效果的思路非常有意思,下文有有实例和详细注释供大家参考,感兴趣的朋友接下来跟随小编一起看看吧。
css的选择器有几种?本文给大家简单的介绍六种比较重要的选择器以及使用要注意的问题,对新手学习和理解css的选择器有一定的帮助,接下来我们一起来看看吧。
这篇文章主要介绍了鼠标滚轮事件&Mac触控板双指事件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008