Web前端入门第 27 问:你知道 CSS 被浏览器分为了几大类吗?
埋头苦写多年的 CSS,从没注意到 CSS 被浏览器分了类,直到偶然的一次翻阅开发者工具,才发现原来 CSS 属性也被浏览器归类收纳了。
Chrome
下面是 Chrome 的开发者工具中 CSS 的属性归类截图,一般情况都不会注意它,毕竟代码不出问题,谁会关心 CSS 属性是哪一类?
当我偶然看到的时候,也来了一句“原来还有这?”

1. Layout(布局)
控制元素在页面上的排列和定位,就是把元素摆在正确位置,别乱跑。
- 常见属性:
display:控制元素的显示方式(如block、inline、flex、grid等)。position:设置元素的定位方式(如static、relative、absolute、fixed等)。float:使元素浮动到左侧或右侧。clear:清除浮动。z-index:控制元素的堆叠顺序。
2. Text(文本)
控制文本的样式和排版,和文字相关的都归为这一类。
- 常见属性:
font-family:设置字体。font-size:设置字体大小。font-weight:设置字体粗细(如normal、bold等)。text-align:设置文本对齐方式(如left、center、right等)。line-height:设置行高。text-decoration:设置文本装饰(如underline、line-through等)。color:设置文本颜色。
3. Appearance(外观)
控制元素的外观样式,把盒子装饰好看一点。
- 常见属性:
background:设置背景颜色或图片。border:设置边框样式、宽度和颜色。border-radius:设置边框圆角。box-shadow:设置元素的阴影效果。opacity:设置元素的透明度。outline:设置元素的外轮廓。
4. Animation(动画)
控制元素的动画效果,让元素灵动起来。
- 常见属性:
animation:定义动画的名称、持续时间、延迟、迭代次数等。@keyframes:定义动画的关键帧。transition:定义元素在不同状态之间的过渡效果(如颜色、大小等的变化)。transform:对元素进行旋转、缩放、倾斜或平移等变换。
5. CSS Variables(CSS变量)
定义可重用的CSS变量,便于统一管理和维护样式,估计这是借鉴了 Sass / Less 等 CSS 预处理器的思想。
- 常见属性:
--variable-name:定义自定义属性(变量)。var(--variable-name):使用自定义属性。
6. Grid(网格布局)
用于创建复杂的二维布局,被称为 CSS 布局终极方案,核武器一般的存在。
- 常见属性:
display: grid:将元素设置为网格容器。grid-template-columns:定义网格的列。grid-template-rows:定义网格的行。grid-gap:设置网格之间的间距。grid-column和grid-row:控制网格项在网格中的位置。
7. Flex(弹性布局)
用于创建一维布局,适合灵活的、响应式的布局设计,夹在 Layout 和 Grid 之间,有点不上不下的意思,反正能用。
- 常见属性:
display: flex:将元素设置为弹性容器。flex-direction:设置主轴方向(如row、column等)。justify-content:设置主轴上的对齐方式。align-items:设置交叉轴上的对齐方式。flex-wrap:控制子元素是否换行。flex-grow、flex-shrink、flex-basis:控制子元素的伸缩行为。
8. Table(表格)
控制表格及其内容的样式,曾经用于页面布局的手段之一,如今主要用于数据显示的场景。
- 常见属性:
border-collapse:设置表格边框是否合并。border-spacing:设置表格单元格之间的间距。caption-side:设置表格标题的位置。table-layout:设置表格的布局算法(如auto、fixed)。
9. Generated Content(生成内容)
通过 CSS 生成内容,通常与伪元素一起使用,生成一些不在页面上显示的内容,比如代码行数、图标等。
- 常见属性:
content:与::before和::after伪元素一起使用,插入生成的内容。quotes:设置引号的样式。counter-reset和counter-increment:用于创建和管理计数器。
10 Other(其他)
包含一些不属于上述类别的CSS属性。
- 常见属性:
cursor:设置鼠标指针的样式。overflow:控制内容溢出时的处理方式。visibility:控制元素的可见性。clip和clip-path:裁剪元素的显示区域。filter:应用滤镜效果(如模糊、灰度等)。
总结
通过查看浏览器开发者工具,可以了解 CSS 属性的归类情况,从而更快地找到需要的属性。也可从类别中发现一些不常用的 CSS 属性,不失为一个发现新大陆的方法。
Web前端入门第 27 问:你知道 CSS 被浏览器分为了几大类吗?的更多相关文章
- web前端入坑第五篇:秒懂Vuejs、Angular、React原理和前端发展历史
秒懂Vuejs.Angular.React原理和前端发展历史 2017-04-07 小北哥哥 前端你别闹 今天来说说 "前端发展历史和框架" 「前端程序发展的历史」 「 不学自知, ...
- Android零基础入门第27节:正确使用padding和margin
原文:Android零基础入门第27节:正确使用padding和margin 前面两期我们学习了LinearLayout线性布局的方向.填充模型.权重和对齐,那么本期我们来学习LinearLayout ...
- 范仁义web前端介绍课程---4、html、css、js初体验
范仁义web前端介绍课程---4.html.css.js初体验 一.总结 一句话总结: html:就是网站的骨架,比如div标签.a标签等 css:style标签或者style属性里面的就是css j ...
- web前端入坑第二篇:web前端到底怎么学?干货资料! 【转】
http://blog.csdn.net/xllily_11/article/details/52145172 版权声明:本文为博主[小北]原创文章,如要转载请评论回复.个人前端公众号:前端你别闹,J ...
- Web前端开发基础 第四课(CSS元素模型)
css布局模型 清楚了CSS 盒模型的基本概念. 盒模型类型, 我们就可以深入探讨网页布局的基本模型了.布局模型与盒模型一样都是 CSS 最基本. 最核心的概念. 但布局模型是建立在盒模型基础之上,又 ...
- Web前端开发基础 第四课(CSS文字和段落排版)
文字排版--字体 我们可以使用css样式为网页中的文字设置字体.字号.颜色等样式属性.下面我们来看一个例子,下面代码实现:为网页中的文字设置字体为宋体. body{font-family:" ...
- [Web 前端] 031 bootstrap 的使用和全局 css 样式
目录 0. 前言 1. 基本模板 2. 布局容器 2.1 container 2.2 container-fluid 3. 栅格系统 3.1 简介 3.2 栅格参数 3.3 实例:从堆叠到水平排列 2 ...
- Web前端开发基础 第四课(CSS小技巧1)
垂直居中-父元素高度确定的单行文本 父元素高度确定的单行文本的竖直居中的方法是通过设置父元素的 height 和 line-height 高度一致来实现的.如下代码: <div class=&q ...
- Web前端开发基础 第四课(CSS小技巧)
水平居中设置-行内元素 我们在实际工作中常会遇到需要设置水平居中场景,今天我们就来看看怎么设置水平居中的. 如果被设置元素为文本.图片等行内元素时,水平居中是通过给父元素设置 text-align:c ...
- Web前端开发基础 第四课(CSS元素分类)
元素分类 在讲解CSS布局之前,我们需要提前知道一些知识,在CSS中,html中的标签元素大体被分为三种不同的类型:块状元素.内联元素(又叫行内元素)和内联块状元素. 常用的块状元素有: <di ...
随机推荐
- 使用 docker 搭建 MySQL 主从同步/读写分离
拉取 MySQL 容器镜像 docker pull mysql:5.7 这里我使用的是 5.7 版本,如果你想要拉取最新版本的镜像,可以使用: docker pull mysql:latest 下载完 ...
- nginx配置好访问返回502错误
CentOS服务器配置好Nginx重新加载了配置文件,浏览器访问提示错误: 502 Bad Gatewaynginx/1.16.1 如图: 页面上直接显示了nginx名称,一般是说nginx服务器返回 ...
- react事件 报错Cannot read property 'setState' of undefined
import React, { Component } from "react"; export class TestHanderClick extends Component { ...
- 天翼云云电脑:IAAS基础设施带来的计算革新
本文分享自天翼云开发者社区<天翼云云电脑:IAAS基础设施带来的计算革新>,作者:不知不觉 在当今这个数字化快速发展的时代,云计算作为一种新兴的信息技术,已经逐渐成为企业和个人日常运营的重 ...
- NetCore.Encrypt —— 整合加密
前言 最近呢又接触到加密了,回顾之前用到的加密经历,使用过DES.RSA.MD5.BASE64,前面也更新过两篇加密的文章,MD5加密和DES加密.之前的使用都是在.Net Framework平台,这 ...
- LeetCode 题解大全
项目说明 LeetCode 系列题解致力于帮助程序员更好地理解和掌握算法思维,内容包含详细的解题思路分析.图文并茂的示例讲解和完整的代码实现. LeetCode 最全题解:持续更新中,欢迎 Star ...
- 在table中tr的display:block显示布局错乱问题
参考链接:https://blog.csdn.net/zj853975468/article/details/51554054?utm_medium=distribute.pc_relevant_do ...
- 本地部署Grok2.0
Grok-beta2.0(通过ChatBox实现) 个人使用: 1.注册登录 官方地址https://x.ai/ 2.创建API密钥 地址https://console.x.ai/ 3.登录githu ...
- 面试题32 - I. 从上到下打印二叉树
地址:https://leetcode-cn.com/problems/cong-shang-dao-xia-da-yin-er-cha-shu-lcof/ <?php /** 从上到下打印出二 ...
- MyBatis与其使用方法讲解
ORM 在讲解Mybatis之前,我们需了解一个概念ORM(Object-Relational Mapping)对象关系映射,其是数据库与Java对象进行映射的一个技术.通过使用ORM,我们可以不用编 ...