防爆玻璃门网站建设,网页qq空间登陆在线登录入口,建设公司双网注册,宣传片拍摄脚本每日鸡汤#xff1a;每个你想要学习的瞬间都是未来的你向自己求救 假设你的项目首页有个大大的图片作为背景#xff0c;那么这个图片肯定会在网络不好的时候加载出来很慢#xff0c;导致用户回看到一大片白屏#xff0c;这样很影响体验。这也是老生常谈的首屏优化的问题。例… 每日鸡汤每个你想要学习的瞬间都是未来的你向自己求救 假设你的项目首页有个大大的图片作为背景那么这个图片肯定会在网络不好的时候加载出来很慢导致用户回看到一大片白屏这样很影响体验。这也是老生常谈的首屏优化的问题。例如
//html
div classcontainerhome/div// css
.container {background: url(xxx.png);
}
我们可以给这个首屏元素加个和颜色类似的背景色来优化这个问题。
假如你是小白你肯定会这样写多写一个 background 属性但是这样是不行的根据css的优先级规则还是会在图片加载出来之前白屏
//html
div classcontainerhome/div// css
.container {background: red;background: url(xxx.png);
}
所以我们可以使用 backgroun-image 属性
//html
div classcontainerhome/div// css
.container {// 注意这个 url 和 颜色的顺序不能变, 默认颜色放右边background-image: url(xxx.png), red;
}
为什么说 background-image 值的顺序不能变呢因为 mdn 官方文档所说 background-image 在绘制时图像以 z 方向堆叠的方式进行。先指定的图像会在之后指定的图像上面绘制。因此指定的第一个图像“最接近用户”。 只有这样才能在图片没加载之前先显示 red 颜色。 注意如果你的图片是透明的就不要这样弄了因为 图片red 的叠加效果可能不是你想要的 还有一个知识点就是 然后元素的边框 border 会在它们之上被绘制而 background-color 会在它们之下绘制。图像的绘制与盒子以及盒子的边框的关系需要在 CSS 属性background-clip 和 background-origin 中定义。 所以你要了解 background 各种属性的绘制规则
规则是z轴方向:
background-color —— background-image 后指定的值(右边) —— background-image 先指定的值(左边) —— border-color
如果有不对的请多指正