文章封面

关于CSS结构伪类的几点实践


最近在做项目中的文章列表页,遇到个挺有意思的小问题:想给列表的第一个项加个粗体突出,最后一个项加条下划线提示“更多内容”,一开始我居然傻乎乎地给每个<li>手动加了class="first"和class="last"。结果HTML里堆了一堆类名,同事瞥了眼屏幕说:“你咋不用结构伪类?明明不用加额外c
文章封面

CSS Grid布局从入门到实战:二维布局的“瑞士军刀”与高效技巧


前端开发里,“把页面元素排整齐”从来不是件简单事。 你可能用过float浮动(容易塌陷)、position定位(脱离文档流难管理),甚至刚学会Flexbox(擅长排成一条线),但遇到同时要管行和列的二维布局(比如卡片列表、导航栏+主内容+侧边栏),这些工具总像“缺了一条腿”。 这时候,CSS Gri
文章封面

CSS Flexbox布局入门:从零开始掌握弹性盒子模型


你有没有过这样的经历? 想让导航栏里的链接均匀分布在容器两侧,试了float: left和text-align: right组合,结果链接挤成一团; 想做一张卡片列表,希望卡片自动换行且间距一致,用inline-block加margin调了半天,要么间距不对,要么换行后错位; 或者想让一个容器里的元
文章封面

CSS Emmet写法指南:新手也能秒懂的高效样式代码技巧


前面我们聊完了HTML部分的Emmet写法,接下来重点说说CSS的Emmet写法——它同样能帮你省去敲重复属性的力气,尤其是写样式时经常要重复输入的margin、padding、color等属性,用Emmet几秒钟就能搞定。 CSS的Emmet语法和HTML不太一样,它更像是一套「属性缩写规则」,掌
文章封面

Emmet写法:前端开发者的“快捷键外挂”(小白友好版HTML篇)


如果你刚接触前端开发(比如学HTML/CSS),肯定遇到过这种情况:明明只是要写个简单的页面结构,却要反复敲<div>、</div>、class=""这些重复代码,手指都快抽筋了……这时候如果有人告诉你:“用Emmet写法,敲3个字母就能生成一整段代码”,你会不会眼前一亮? 别急,这篇文章就用最生活
文章封面

CSS3核心特性-第8章-8.4-自定义字体(@font-face)


8.4 自定义字体(@font-face) 学习目标 掌握@font-face规则的语法结构及字体格式要求 理解字体文件格式(TTF/OTF/WOFF)的兼容性差异 学会优化自定义字体加载性能(字体子集、预加载策略) 能够解决自定义字体在不同浏览器中的渲染问题 概念讲解 @font-face是CSS
文章封面

CSS里padding和margin到底怎么选?一篇讲透两者的区别和使用场景


写CSS时,最让人纠结的问题之一大概是:该用padding还是margin? 这两个属性都能“留空”,但用错了可能导致布局错乱、样式不符合预期。本文用最直白的语言+生活化类比,帮你彻底理清两者的区别,并总结一套“傻瓜式”选择指南。 一、核心概念:padding是“内衬”,margin是“外隔”——从
文章封面

JavaScript中的“数据解析”:用 `parseInt` 和 `parseFloat` 搞懂字符串转数字


你有没有遇到过这种情况? 用户输入框里填了 "123",你想用它做数学计算,结果直接加 5 却得到 "1235";或者从接口拿到 "99.9" 这样的字符串,想转成数字却发现计算时总出错…… 这时候,你需要用到 JavaScript 中的“数据解析”工具——parseInt 和 parseFloat
文章封面

看懂 `if (!b)`:一行代码背后的“真假判断”逻辑


你可能在写JavaScript代码时见过这样的片段: let b; if (!b) { console.log("执行这里的代码"); } 或者更常见的是检查用户输入: let userName = document.getElementById("username").value; // 获
文章封面

JavaScript数据类型转换:从“意外结果”到“主动掌控”


你有没有在写JS代码时遇到过这些“迷惑行为”? 比如明明写了 1 + "1",结果得到的是 "11" 而不是 2;或者用 == 比较 "" 和 0,居然得到 true;又或者明明变量是 null,和 undefined 比较却返回 true…… 这些“不按常理出牌”的结果,其实都和JavaScrip
提交友链