CSS面试题

CSS面试题

如何理解HTML语义化

HTML语义化就是在书写HTML结构时,使用HTML中具有明显语义化的标签,例如p标签、ul标签、header标签等。增加代码的可读性,让程序员与搜索引擎(SEO)更容易读懂。

块级元素和内联元素

块级元素:display: block/table,p、ul、div、h1等

内联元素:display: inline/inline-block,img、span、input、button

盒模型计算

offsetWidth =(内容宽度+内边距+边框),无外边距

margin纵向重叠

相邻元素的margin-top和margin-bottom会发生重叠,空白内容的p标签也会重叠

margin负值

margin-left和margin-top为负值,自身向左和向上移动;

margin-right和margin-bottom为负值,自身不动,右边和下面的元素向左和向上移动

BFC

position为absolute、fixed

float不为none

overflow不为visible

display为flex、inline-block

圣杯布局

双飞翼布局

flex布局画骰子

javascript 复制代码
<div class="container">
    <div class="item"></div>
    <div class="item"></div>
    <div class="item"></div>
</div>

.container{
        width: 200px;
        height: 200px;
        border: 1px solid black;
        padding: 10px;

        display: flex;
        justify-content: space-between;
 }
 .item{
        width: 40px;
        height: 40px;
        background-color: #888;
        border-radius: 50%;
 }
 .item:nth-child(2){
        align-self: center;
 }
.item:nth-child(3){
        align-self: flex-end;
}

line-height继承

javascript 复制代码
<body>
	<p>文字</p>
</body>
body{
	font-size: 20px;
	line-height: 20px; //此时p标签的line-height为20px
	line-height: 1.5; //此时p标签的line-height为16*1.5=24px
	line-height: 200%; //此时p标签的line-height为20*200%=40px
}
p{
	background-color: #ccc;
	font-size: 16px;
}

rem

javascript 复制代码
//依据根元素font-size决定
html{
	font-size: 100px;
}
div{
	width: 2rem; //宽度为200px
}
<div>111</div>

vw/vh

javascript 复制代码
window.screen.height //屏幕高度
window.innerHeight //视口高度,减去浏览器上方、下方,真正元素放置的地方
document.body.clientHeight //元素撑起的高度

1vw //网页视口宽度的1/100
1vh //网页视口高度的1/100
相关推荐
treasure1401 小时前
【复古】浅尝Django前后端不分离
前端·css·python·django·bootstrap·html·web
jay神2 小时前
基于 YOLOv8 的手势识别系统(Web 版)
前端·人工智能·python·深度学习·yolo·计算机视觉·计算机毕业设计
屏什么录2 小时前
长时间录屏中途崩溃:MP4 打不开的 6 种救回方案与参数设置
前端·音视频开发
code_Bo3 小时前
不只命令行:我把跨 Agent 会话同步做成了桌面应用
前端·javascript·后端
kyriewen3 小时前
AI 能把页面写出来,为什么改个需求就开始崩?
前端·javascript·人工智能
涛涛ing4 小时前
2026年最值得关注的前端变化,藏在“默认值”里
前端
亿元程序员6 小时前
太牛了!这AI做出来的游戏,居然还能变现!
前端
hellice6 小时前
闪传 FlashDrop 实战:我用 300 行 Node 代码做了个「4 位取件码」临时文件中转站
前端·产品
用户0829773260056 小时前
RTX 5500 MIG 踩坑记录:切分之后模型跑不起来,排错整整一下午
前端
Lank_M6 小时前
AI 放大后的图更清楚,但它不能当原图入库
前端