css怎么制作首字下沉
首字下沉的实现方法
在CSS中,首字下沉(Drop Cap)可以通过多种方式实现,以下是常见的几种方法:
使用 ::first-letter 伪元素
通过 ::first-letter 伪元素选择器直接对段落的首字母进行样式设置:

p::first-letter {
font-size: 3em;
float: left;
line-height: 0.8;
margin-right: 0.1em;
color: #900;
}
font-size放大首字母字号。float: left让首字母脱离文档流并向左浮动。line-height调整行高以避免与其他行重叠。margin-right控制首字母与后续文本的间距。
结合 initial-letter 属性(现代浏览器支持)
CSS3 的 initial-letter 属性专门用于首字下沉效果:

p::first-letter {
initial-letter: 3;
color: #900;
font-weight: bold;
}
initial-letter: 3表示首字母占据3行高度。- 目前仅部分现代浏览器(如Safari)支持,需确认兼容性。
使用伪元素和绝对定位
通过绝对定位实现更复杂的首字下沉效果:
p {
position: relative;
padding-left: 4em;
text-indent: 0;
}
p::first-letter {
position: absolute;
left: 0;
top: 0;
font-size: 4em;
line-height: 0.8;
}
padding-left为段落预留首字母空间。text-indent: 0取消段落默认缩进。- 首字母通过绝对定位固定在预留区域。
结合背景色或边框
为下沉首字母添加装饰效果:
p::first-letter {
font-size: 3em;
float: left;
padding: 0.2em;
margin: 0.1em 0.2em 0 0;
background: #f8f8f8;
border: 1px solid #ddd;
}
注意事项
- 调整
line-height和margin可避免首字母与后续文本重叠。 - 使用
float时需确保容器有足够宽度。 - 测试不同浏览器的兼容性,尤其是
initial-letter属性。
以上方法可根据设计需求灵活组合或调整参数。






