🎶 Sym - 一款用 Java 实现的现代化社区(论坛/BBS/社交网络/博客)平台

📕 思源笔记 - 一款桌面端笔记应用,支持 Windows、Mac 和 Linux

🎸 Solo - B3log 分布式社区的博客端节点,欢迎加入下一代社区网络

♏ Vditor - 一款浏览器端的 Markdown 编辑器

CSS 布局 - 宽高保持一致

2019-07-09

描述

一个元素的宽度是变化的,在自适应中我们需要保证他的高度和宽度一致(例如:他的宽高比率为一个常数)。

HTML

<div class="constant-width-to-height-ratio"></div>

CSS

.constant-width-to-height-ratio {
  background: #333;
  width: 50%;
}
.constant-width-to-height-ratio::before {
  content: '';
  padding-top: 100%;
  float: left;
}
.constant-width-to-height-ratio::after {
  content: '';
  display: block;
  clear: both;
}

Demo

说明

  1. ::before 伪元素中的 padding-top 能使元素的高度等于他宽度的一个百分比
  2. 100% 表示元素的高度将总是宽度的 100%,这可以创建一个自适应的正方形
  3. 这个方法允许在该元素的内部正常放置内容

浏览器支持

支持率:100%

返回总目录

每天 30 秒系列之 CSS


欢迎注册黑客派社区,开启你的博客之旅。让学习和分享成为一种习惯!

留下你的脚步