精选推荐

最新动态

CSS项目实战之滑动开关设计_纯CSS制作iOS风格开关

能,而且不需要任何JavaScript。核心是利用 input[type="checkbox"] 的隐藏状态 + label 关联 + ::before/::after 伪元素模拟滑块和轨道。关键不是“画得多像”,而是“点击区域够大、状态切换即时、视觉反馈明确”。

CSS加载动画之吃豆人效果_利用圆角与旋转实现的趣味动效

纯 CSS 实现吃豆人张嘴闭嘴,本质不是“画一张嘴”,而是用一个圆形裁出扇形缺口。关键在于:用 border-radius: 50% 得到正圆,再通过 clip-path 或「错位遮罩」模拟开口——但最轻量、兼容性最好的方式其实是旋转一个带缺口的圆弧形元素。不过更常用且稳妥的做法是:用两个重叠的 div,底层是完整圆,上层是旋转的扇形遮罩(或反向剪裁)。

CSS伪元素::selection自定义_修改网页文字选中颜色

直接写 CSS 规则就行,::selection 是标准伪元素,现代浏览器基本都支持(IE 不支持,Edge 12+ 开始支持)。它作用于用户鼠标拖拽选中的文本,不是所有元素都响应——比如 <input> 和 <textarea></textarea> 默认不生效,得额外加 ::-moz-selection(旧版 Firefox)或用 user-select: text 激活。

CSS伪类:is()在现代CSS架构中的性能与语法优势

因为浏览器对 :is() 内部的选择器只做一次解析和匹配,而不是把每个逗号分隔项展开成独立规则去重复计算。这直接降低了样式表的解析开销和重排重绘时的匹配成本。

CSS轮廓线设置_outline与border的区别及应用

这是最常被误用的根源。当你给一个 div 加上 outline: 2px solid red,它不会影响周围元素的位置;但换成 border: 2px solid red,整个盒模型宽度和高度就多了 4px(上下/左右各 2px),可能触发重排或挤掉邻近元素。

CSS解决Flex布局下高度塌陷_理解弹性容器的高度计算

当父容器设了 display: flex,子元素又全是 flex 项(比如没设 height 或内容为空),浏览器很可能把它算成 0 高度——不是 bug,是规范里明确写的:弹性容器的**自动高度不继承子项的“块级”尺寸逻辑**,它只看自身内容盒(content box)的固有尺寸,而 Flex 子项默认不贡献这个尺寸。