聊聊 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倍

相关推荐
无风听海2 分钟前
JSON Web Token(JWT)完全指南
java·前端·json
IT_陈寒41 分钟前
Python闭包里藏的这个坑,差点让我加班到凌晨
前端·人工智能·后端
IT_陈寒41 分钟前
Java注解空指针?这个坑我踩得莫名其妙
前端·人工智能·后端
H0r1zon.1 小时前
PinCopy:双击 Ctrl,把剪贴板「钉」在屏幕上
前端
kyriewen1 小时前
大厂面试新规:不会用AI编程,直接挂
前端·面试·ai编程
努力找实习的前端小白1 小时前
useImperativeHandle,useRef,forwardRef的协作关系
前端·面试
ZengLiangYi2 小时前
Fastify 加 Electron:把 Web 服务嵌进桌面应用
前端·javascript·后端
qq_2518364572 小时前
基于nodejs express +vue 天天商城系统设计与实现 (源码 文档)
前端·vue.js·express
胡萝卜术2 小时前
从零搭建生成式AI项目:OpenAI + Node.js 环境配置与密钥安全实践
前端·javascript·面试
lichenyang4532 小时前
鸿蒙实战:聊天记录持久化 · 历史会话页面 · 两个真实 Bug 的定位与修复
前端