掉落造型帽子的藝術已經在數百年之久了。這會在列印樣式中使用,代表新區段或章節的開頭可透過歷史記錄查看。但在數位時代中,展現時尚風格的向來都是問題。目前沒有任何「乾淨」的解決方案能設定樣式。
CSS initial-letter
資源能讓你事半功倍。
瀏覽器支援
initial-letter
可以在哪裡嘗試?你可以透過 Safari 和 Chrome 110 使用這項服務。在 Safari 中,屬性的前置字元需要 -webkit-
。在 Firefox 中發現這個尚未解決的問題。
使用下列工具測試 initial-letter
支援:
@supports (initial-letter: 1 1) { /* Your supported styles */ }
目前的解決方案
目前在 CSS 中,如何調整下滑上限的樣式?
::first-letter
虛擬元素可引領我們採取行動。
p::first-letter {
color: hsl(220, 94%, 51%);
font-weight: bold;
font-size: 4rem;
}
但如果要計算第一個字母的大小,就可能需要使用「float」這類屬性。
p::first-letter {
color: hsl(220, 94%, 51%);
font-weight: bold;
font-size: 4rem;
float: left;
line-height: 1;
margin-right: 0.25rem;
}
引入新的 CSS 單元 (例如 lh
) 或許能減輕這個問題。但這些支援有限,但 lh
目前僅支援 Chrome。
p::first-letter {
color: hsl(220, 94%, 51%);
font-weight: bold;
font-size: 3lh;
float: left;
line-height: 1;
margin-right: 0.1lh;
}
初始字母簡介
initial-letter
屬性可讓您更精細地控制這個放置上限樣式。會取用兩個以空格分隔的值:
p::first-letter {
initial-letter: 3.5 3;
}
- 第一個引數會定義字母大小和占行的行數。字母在維持顯示比例時放大。不可使用負值,但可以使用小數值。
- 第二個引數定義字母接收器。因此可視為字母所在處的位移。第二個值是選填欄位,不得為負數。如果沒有,則會假設字母大小的值為最接近的整數。這等同於使用關鍵字「下滑」。接收器還接受另一個關鍵字值「raise」,該值相當於 1 支 {0/} 的接收器。
請看這個示範模式,您可以在其中變更值,看看這會對放置上限樣式造成什麼影響。
搭配 ::first-line
運用,就能呈現如下效果:
p::first-line {
font-variant: small-caps;
font-weight: bold;
font-size: 1.25rem;
}
p::first-letter {
font-family: "Merriweather", serif;
initial-letter: 3.5 3;
font-weight: bold;
line-height: 1;
margin-right: 1rem;
color: #3b5bdb;
text-shadow: 0.25rem 0.25rem #be4bdb;
}
或是輸入 border
。請注意,以下範例使用「drop」關鍵字 (如果省略,則預設為 3):
css
p::first-letter {
font-family: "Merriweather", serif;
initial-letter: 3.5 drop;
font-weight: bold;
line-height: 1;
margin-right: 1rem;
color: #3b5bdb;
border: 0.25rem dashed #be4bdb;
padding: 0.5rem;
border-radius: 5px;
}
也許可以新增 background
或一些 box-shadow
:
p::first-letter {
font-family: "Merriweather", serif;
initial-letter: 3.5 3;
font-weight: bold;
line-height: 1;
margin-right: 1rem;
color: var(--surface-1);
background: #be4bdb;
padding: 0.5rem;
border-radius: 5px;
box-shadow: 0.5rem 0.5rem 0 #3b5bdb;
}
你也可以將背景裁剪為文字:
p::first-letter {
background: linear-gradient(to bottom right,#1f005c,#5b0060,#870160,#ac255e,#ca485c,#e16b5c,#f39060,#ffb56b);
font-family: "Merriweather", serif;
initial-letter: 3.5 3;
font-weight: bold;
line-height: 1;
margin-right: 1rem;
color: transparent;
-webkit-background-clip: text;
padding: 0.5rem;
}
你有許多可能!
這樣,您就可以使用 initial-letter
更精細地控制放置上限樣式!您是否要在字體排版中新增放置上限?這時該如何設計?歡迎告訴我們!