封面图片应使用 background-image 配合 background-size: cover,因其可等比缩放并铺满容器(可能裁剪边缘),而 img 标签是流式内容元素,易拉伸错位、上下留白;装饰性封面属视觉层,控制权应在 CSS 手中。

封面图片用 ![]()
还是 background-image?
直接用 标签放封面,容易被拉伸、裁剪错位,尤其在手机上常出现上下留白或压扁;而用 CSS 的 background-image 配合 background-size: cover 才能真正实现「铺满容器且保持比例」。这不是偏好问题,是行为差异:前者是流式内容元素,后者是装饰性背景,控制权在 CSS 手里。
推荐方案是用一个空的 这是最常选错的参数。用 单张高清图(如 2560×1440)配 更务实的做法是用 注意: 生成可在 deepbi 沙箱 iframe 内运行或作为独立文件运行的交互式 HTML 页面,使用 `window.deepbi` JS SDK 实现数据查询、空间管理、文件浏览及用户操作。当用户提出以下需求时启用该能力:
- 创建 KPI 仪表盘、数据表格、文件浏览器、成员列表、管理页面;
- 明确要求“转成 dhtml”、“转译成 HTML”、“把 XX 页面转成……”、“控制台页面”、“管理后台”、“DeepBI 页面迁移”;
- 提及位于 `apps/console/src/featur iOS Safari 的地址栏收放会动态改变 解决方法不是放弃 实际项目中,封面区域往往还要叠导航栏、标题文案,这些元素的定位和 z-index 容易和背景图打架,建议把所有交互内容包进一个相对定位的父容器里,再统一控制层级——这点比图片怎么适配还容易出问题。<div class="hero"></div>
<style>
.hero {
height: 100vh;
background-image: url("cover.jpg");
background-size: cover;
background-position: center;
background-repeat: no-repeat;
}
</style>
background-size: cover 和 contain 到底差在哪?cover 时,图片会等比缩放并填满整个容器,**可能裁剪边缘**;用 contain 时,图片完整可见,但**必然留白**——做封面,99% 场景要的是前者。
cover 可能切掉人物头部,这时加 background-position: top 或 center 20% 微调视觉重心background-attachment: fixed 做视差,它在 iOS Safari 上有渲染 bug,且影响滚动性能响应式断点要不要写?
picture 或 srcset 有用吗?cover 在多数设备上够用,但对网络弱、屏幕小的用户不友好——你没必要让手机下载 3MB 的图。 按视口宽度切换资源:<picture class="hero"><source media="(max-width: 768px)" srcset="cover-mobile.jpg"><source media="(max-width: 1200px)" srcset="cover-tablet.jpg">
@@##@@
</source></source></picture>
本身不支持 background-size 行为,所以得配合 JS 或额外 CSS 控制尺寸;若嫌麻烦,退一步用 + 
srcset 更轻量:
@@##@@
为什么加了
height: 100vh 在 iOS 上还是显示不全?vh 单位的实际高度,导致封面忽高忽矮,甚至底部被截。这不是 bug,是设计行为。vh,而是用 JS 动态修正,或改用更稳定的替代值:
min-height: 100vh 而非 height: 100vh,允许内容撑开@supports (-webkit-touch-callout: none) { .hero { height: -webkit-fill-available; } },利用 Safari 的私有值resize,用 JS 设置 style.height = window.innerHeight + 'px',但记得节流
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!










