聊聊 CSS

先补充一些概念

  • C/S(客户端/服务器):要下载到本地才能用
    • 需要安装、偶尔更新、不跨平台
  • B/S(浏览器/服务器):在浏览器输入网址就可以使用
    • 无需安装、无需更新、可跨平台

!NOTE

B/S 架构优点如此之多,可以抛弃 C/S 架构吗?-- 不可以

必须用 C/S 的软件:大型专业应用(性能)、军工应用(安全)

那我们前端人员只能写网页吗?-- 不是

我们可以使用熟悉的语言去开发客户端应用,比如 React Native、Uni-App + Vue。还可以使用 Electron 去开发跨平台的 PC 端应用


选择器优先级

内联样式 > ID > 类 > 标签 > 通配

选择器权重计算

权重值:格式为(a,b,c)

  • a:一个选择器中【ID】选择器的个数
  • b:一个选择器中【类、伪类、属性】的个数
  • c:一个选择器中【元素、伪元素】的个数

权重值比较规则:从左往右比,谁大谁胜出。若一样大,后写的优先

例子

css 复制代码
div.box1 ul.list li --(0, 2, 3)
div.box1>ul>li -- (0, 1, 3)

特殊情况

  • 出现 内联样式,则第4位是 1
  • 出现 !important,则第5位是 1

字体相关

设置 font-size:40px 那该元素的高是 40px 吗?

不是,40px 是字体的高度,但是字体设计时一般会有些字超出字体边框,所以浏览器会采取自适应策略适当增加元素的高以能包含字体,所以高度会稍大些。

为了不使字体重叠影响观感,line-height一般设为 1.667 也就是 font-size 的1.667倍

相关推荐
PineappleCoder8 分钟前
工程化必备!SVG 雪碧图的最佳实践:ID 引用 + 缓存友好,无需手动算坐标
前端·性能优化
JIngJaneIL43 分钟前
基于springboot + vue古城景区管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
敲敲了个代码1 小时前
隐式类型转换:哈基米 == 猫 ? true :false
开发语言·前端·javascript·学习·面试·web
澄江静如练_1 小时前
列表渲染(v-for)
前端·javascript·vue.js
JustHappy2 小时前
「chrome extensions🛠️」我写了一个超级简单的浏览器插件Vue开发模板
前端·javascript·github
Loo国昌2 小时前
Vue 3 前端工程化:架构、核心原理与生产实践
前端·vue.js·架构
sg_knight2 小时前
拥抱未来:ECMAScript Modules (ESM) 深度解析
开发语言·前端·javascript·vue·ecmascript·web·esm
LYFlied2 小时前
【每日算法】LeetCode 17. 电话号码的字母组合
前端·算法·leetcode·面试·职场和发展
开发者小天2 小时前
react中useEffect的用法,以及订阅模式的原理
前端·react.js·前端框架