CSS隐藏秘籍:揭秘7个鲜为人知的单位
172 浏览量
更新于2024-08-31
收藏 133KB PDF 举报
"这篇文章主要介绍了7个不常见的CSS单位,帮助读者扩展CSS知识,提高网页设计和开发能力。"
在CSS世界中,单位是衡量页面元素尺寸和位置的基础。除了常用的像素(pixel)和相对单位如em,还有许多其他单位可能在特定场景下显得尤为有用。以下就是7个可能不常被提及的CSS单位:
1. rem (root em)
rem单位与em类似,但它不是相对于父元素的字体大小,而是相对于根元素(通常是html元素)的字体大小。这意味着你可以设置一个全局的字体大小,然后所有使用rem单位的元素都将根据这个基础值进行计算。这样可以更方便地控制整个页面的缩放。
示例:
```css
html {
font-size: 16px;
}
div {
font-size: 1.5rem; /* 相当于 16px * 1.5 = 24px */
}
```
2. ch (character)
ch单位基于元素的字体中的'0'字符的宽度。这对于创建等宽布局或基于字符数的间距很有用。
```css
input {
width: 20ch; /* 输入框宽度基于20个'0'字符的宽度 */
}
```
3. vw (viewport width) 和 vh (viewport height)
这两个单位分别表示视口宽度和高度的百分比。它们在响应式设计中非常有用,可以让元素的尺寸随窗口大小动态变化。
```css
header {
height: 5vh; /* 头部高度为视口高度的5% */
}
```
4. vmin 和 vmax
vmin和vmax单位分别是vw和vh的最小值和最大值。它们可以帮助创建跨设备的适应性布局。
```css
img {
max-width: 100vmin; /* 图片的最大宽度为视口的较小边的100% */
}
```
5. % (百分比)
百分比单位可能大家都比较熟悉,但它在不同的上下文中有不同的含义。例如,它可以用于设置元素相对于其父元素的宽度、高度,或者相对于字体大小的行高。
```css
.container {
width: 80%; /* 容器宽度为父元素宽度的80% */
}
```
6. fr (flex fraction)
在Flexbox布局中,fr单位用于分配剩余空间。它允许灵活地分配容器内的空间,非常适合创建响应式布局。
```css
.flex-container {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.flex-item {
flex-basis: 1fr; /* 每个子元素占用相同的空间 */
}
```
7. calc()
CSS的calc()函数允许动态计算长度、频率、角度、时间、百分比、数值。它可以结合各种单位进行复杂的计算。
```css
.box {
width: calc(100% - 20px); /* 箱子的宽度为父元素宽度减去20像素 */
}
```
了解并熟练运用这些不常见的CSS单位,可以让你的设计更加灵活、适应性强,也能解决一些特殊场景下的布局难题。随着Web技术的发展,掌握这些单位将使你在网页设计和开发领域更具竞争力。
2010-05-04 上传
2021-12-01 上传
2018-09-11 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
2024-11-06 上传
weixin_38605188
- 粉丝: 9
- 资源: 924
最新资源
- Android圆角进度条控件的设计与应用
- mui框架实现带侧边栏的响应式布局
- Android仿知乎横线直线进度条实现教程
- SSM选课系统实现:Spring+SpringMVC+MyBatis源码剖析
- 使用JavaScript开发的流星待办事项应用
- Google Code Jam 2015竞赛回顾与Java编程实践
- Angular 2与NW.js集成:通过Webpack和Gulp构建环境详解
- OneDayTripPlanner:数字化城市旅游活动规划助手
- TinySTM 轻量级原子操作库的详细介绍与安装指南
- 模拟PHP序列化:JavaScript实现序列化与反序列化技术
- ***进销存系统全面功能介绍与开发指南
- 掌握Clojure命名空间的正确重新加载技巧
- 免费获取VMD模态分解Matlab源代码与案例数据
- BuglyEasyToUnity最新更新优化:简化Unity开发者接入流程
- Android学生俱乐部项目任务2解析与实践
- 掌握Elixir语言构建高效分布式网络爬虫