用於 | 屬性名 | CSS 版本 | 瀏覽器支援 | 繼承性 | 預設值 |
---|---|---|---|---|---|
① 顏色的前景色 (文字/文字裝飾/邊框/當前顏色的 顏色) 。 | color | 1 | 都支援。IE 所有版本 不支援屬性值「inherit」。 | yes | not specified |
② 文字的書寫方向。文字/表列/水平溢位的 方向 (文字方向 可用標籤的 dir 屬性 替代)。 | direction | 2 | 同上。 | yes | ltr |
③ 標點字元 是否位於線框之外。屬性: 懸掛標點的 位置和符號 (實驗中 屬性)。 | hanging-punctuation | 3 | safari 10.1+支援,其他 都不支援。 | yes | none |
④ 字元間距 (字元之間的 額外空白/空間)。 | letter-spacing | 1 | 同上。 | yes | normal |
行高。設定 行高/行間距 (一行多高,影響 行之間的 距離) 。 | line-height | 1 | 同上。 | yes | normal |
⑤ 標點字元 修剪。 | punctuation-trim | 3 | 都不支援。 | yes | none |
⑥ 文字 水平對齊 方式。 | text-align | 1 | 都支援。IE 所有版本 | yes | 如果 direction 屬性是 ltr,則預設值是 left;如果 direction 是 rtl,則為 right。 不支援屬性值「inherit」。 |
⑦ 文字最後一行 水平對齊方式 (搭配 direction ,text-align 屬性)。 | text-align-last | 3 | IE11+,edge14+部分支援,FF52+ chrome49+ opera45+支援,safari不支援。 | yes | auto |
⑧ 文字 裝飾(線)。 | text-decoration | 1 | 同上,且IE、Chrome 或 Safari 不支援 「blink」 屬性值。 | no | none.(塊元素 首行) 文字的 縮排量 (空白長度)。 |
⑨ 新增 文字強調符號(形狀,顏色,位置) 。 | text-emphasis | 3 | IE,Edge 不支援,FF52+ safari10.1+ 支援,chrome49+部分支援。 | no | none |
⑩ 文字兩端對齊的 空間分隔方式 (搭配text-align 屬性)。 | text-justify | 3 | IE11+,edge14+部分支援,FF55+支援,其他不支援。 | yes | auto |
⑪ 文字的陰影 (影響 裝飾線 text-decoration )。 | text-shadow | 2 | 都支援。IE 10及以上才支援。 | yes | none |
文字 大小寫轉換。 | text-transform | 1 | 都支援。IE 所有版本 不支援屬性值「inherit」。 | yes | none |
⑫ 文字的輪廓。 | text-outline | 3 | 都不支援。 | yes | none |
⑬ 隱藏文字溢位時 的顯示 (搭配 overflow ,white-space ,display 屬性)。 | text-overflow | 3 | 都支援,不需要字首。 | no | clip |
⑭ 文字新增陰影。 | text-shadow | 3 | 都支援,IE10+支援 | yes | none |
⑮ 文字的換行規則。 | text-wrap | 3 | 都不支援。 | yes | normal |
⑯ 雙向文字的 重寫/覆蓋 (搭配 direction 屬性)。 | unicode-bidi | 2 | yes | ||
⑰ 空白和換行的 處理。 | white-space | 1 | 都支援。IE 所有版本 不支援屬性值「inherit」。 | yes | normal |
⑱ 單詞 換行/斷行 位置 (能否 詞內斷行)。 | word-break | 3 | 都支援。IE6+支援。 | yes | normal |
⑲ 對長的不可分割的單詞 進行分割並換行到下一行。單詞 斷行時的 斷行位置 (斷句/斷行 方式)。 | word-wrap | 3 | 都支援,IE6+ | yes | normal |
⑳ 單詞/字 之間的 距離。 | word-spacing | 1 | 同上 | yes | normal |
color
屬性color
設定 元素的 ❶ 文字 和 ❷ 文字裝飾 (text-decoration
) 的 前景顏色值currentcolor
的值。currentcolor
可以用作 其他屬性的 間接值,並且是 其他顏色屬性(如 ❹ 邊框顏色 border-color
)的 預設值。color
屬性設定了 一個 元素的前景色color:green
,會 把邊框和文字的顏色,同時設定為 綠色.border-color
覆蓋/ 重新設定.color
影響.jpg
)、點陣圖、畫素圖,簡單的說,color
: color_name|hex_number|rgb_number|inherit
;/* 關鍵字值 Keyword values */ color: currentcolor; /* 顏色名稱 <named-color> values */ color: red; color: orange; color: tan; color: rebeccapurple; /* 十六進位制顏色 <hex-color> values */ color: #090; color: #009900; color: #090a; color: #009900aa; /* <rgb()> values ,逗號 可以換成空格,但是目前 最好別這麼做,相容性還沒那麼好*/ color: rgb(34, 12, 64); /*rgb()中帶不透明度值,瀏覽器支援度不好,用rgba()*/ color: rgb(34, 12, 64, 0.6); color: rgba(34, 12, 64, 0.6); color: rgb(34 12 64 / 0.6); color: rgba(34 12 64 / 0.3); color: rgb(34.0 12 64 / 60%); color: rgba(34.6 12 64 / 30%); /* <hsl()> values ,逗號 可以換成空格,但是目前 最好別這麼做,相容性還沒那麼好*/ color: hsl(30, 100%, 50%); /*hsl()中帶 不透明度值,瀏覽器支援度不好,用 hsla()*/ color: hsl(30, 100%, 50%, 0.6); color: hsla(30, 100%, 50%, 0.6); color: hsl(30 100% 50% / 0.6); color: hsla(30 100% 50% / 0.6); color: hsl(30.0 100% 50% / 60%); color: hsla(30.2 100% 50% / 60%); /* Global values */ color: inherit; color: initial; color: unset;
color
的 屬性值
color_name
,currentColor
,transparent
red
)。hex_number
#ff0000
)rgb()
,rgba()
color: rgb(34, 12, 64);
color: rgba(34, 12, 64, 0.6);
hsl()
,hsla()
color: hsl(30, 100%, 50%);
color: hsla(30, 100%, 50%, 0.6);
inherit
color
。<gradient>
,漸變色 實際上是一種 影象了,而不是一種顏色.。yes
color { width: 600px; border: 10px dashed; padding: 10px; /*把一段文字 設定成紅色的 方法*/ color: red; color: #f00; color: #ff0000; color: rgb(255,0,0); color: rgb(100%,0%,0%); color: hsl(0,100%,50%); /*設定 半透明的紅色 = 不透明值 等於一半的 紅色*/ color: #ff000080; color: rgba(255,0,0,0.5); color: hsla(0,100%,50%,0.5); }
紅色 | 半透明的紅色 |
---|---|
direction
屬性 設定 文字、表列(table columns
) 和 水平溢位 (horizontal overflow
)的 方向。direction
: ltr|rtl|inherit
;/* 關鍵字值 Keyword values */ direction: ltr; direction: rtl; /* 全域性通用的屬性值 Global values */ direction: inherit; direction: initial; direction: unset;
direction
方向的 屬性值
ltr
rtl
Hebrew
) 或 阿拉伯語(Arabic
) 等)inherit
direction
屬性的值。direction
屬性 和 html 標籤的屬性dir
(標籤中)
dir
屬性 :dir
屬性),而不是 直接使用direction
屬性。direction
屬性:dir
屬性 不同,direction
屬性 不是從表列 繼承到表單元格的,因為CSS 繼承遵循 檔案樹,而 表單元格 位於行中,而 不是列中。direction
屬性 對 行內元素 有影響,必須 unicode-bidi
屬性的值 設定為 embed
, override
.all
屬性影響:direction
和 unicode-bidi
屬性: 是唯獨的兩個 不受 all
屬性 影響的屬性。⑸ direction
的 瀏覽器支援
.color { width: 450px; border: 10px dashed; padding: 10px; /*設定文字的方向*/ direction: rtl; }
預設的文字方向: ltr 從左到右 | 設定成 從右到左 direction: rtl; |
---|---|
。
的位置,可以看出direction: rtl;
= <p dir="rtl"> </p>
: 兩個效果 是一樣的,dir
: direction 的簡寫..dirTest { border: 1px solid; width: 300px; direction: rtl; background-color: #d0d0d0; } .dirTest td, th { border: 1px solid; }
<table class="dirTest"> <tr> <th>①姓名</th> <th>②愛吃的水果名</th> <th>③愛好</th> </tr> <tr> <td> 小明 </td> <td> 葡萄 </td> <td>乒乓球</td> </tr> <tr> <td> 莉莉 </td> <td> 蘋果 </td> <td>動漫</td> </tr> </table>
預設方向: 從左到右 | 設定 從右到左 |
---|---|
direction:rtl
= <table class="dirTest" dir="rtl"> </table>
dir
屬性中設定.hanging-punctuation
屬性,美 /ˌpʌŋktʃuˈeɪʃn/hanging-punctuation: none|first|last|allow-end|force-end;
/* 關鍵字值 Keyword values */ hanging-punctuation: none; hanging-punctuation: first; hanging-punctuation: last; hanging-punctuation: force-end; hanging-punctuation: allow-end; /* 兩個值 Two keywords */ hanging-punctuation: first force-end; hanging-punctuation: first allow-end; hanging-punctuation: first last; hanging-punctuation: last force-end; hanging-punctuation: last allow-end; /* 三個值 Three keywords */ hanging-punctuation: first force-end last; hanging-punctuation: first allow-end last; /* 全域性值 Global values */ hanging-punctuation: inherit; hanging-punctuation: initial; hanging-punctuation: unset;
none
first
last
allow-end
force-end
hanging-punctuation
屬性 可被指定 多個值,可以是 一個值,兩個值,或者 三個值。first
搭配 last
, allow-end
, force-end
中的一個last
搭配 first
,allow-end
,force-end
中的一個first
, allow-end
, last
first
,force-end
, last
letter-spacing
屬性letter-spacing
: normal|length|inherit
;/* 關鍵字值 Keyword value */ letter-spacing: normal; /* 長度值 <length> values */ letter-spacing: 0.3em; letter-spacing: 3px; letter-spacing: .3px; /* 全域性值 Global values */ letter-spacing: inherit; letter-spacing: initial; letter-spacing: unset;
normal
normal
≠ 0
,需要時,瀏覽器可調整 字元間距:0
不同,此關鍵字 允許使用者代理 更改字元之間的 空格,以 調整/對齊 文字。length
inherit
letter-spacing
屬性的值。yes
⑺ 字元間距letter-spacing
的 瀏覽器支援
<p class="textTest"> 業精於勤是一個漢語成語,拼音是 yè jīng yú qín,意思是指 學業的精進 在於勤奮。出處唐·韓愈《進學解》:「業精於勤,荒於嬉;行成於思,毀於隨。 </p>
.textTest { width: 450px; border: 10px dashed; padding: 10px; /*字元之間的間距*/ letter-spacing: normal; }
正常間距 (預設值) normal | 增加 0.2em的額外間距 letter-spacing: 0.2em; |
---|---|
減少 0.2em的額外間距 letter-spacing: -0.2em; | 字元間距 不正常的字型(太大/太小) 2em, -0.9em |
line-height
屬性line-height
- 字型大小font-size
= 行高和字型大小的 差值⑵ 行高、基線、頂線、中線、底線 範例圖
line-height
:normal|number|length|%|inherit
;/* 關鍵字值 Keyword value */ line-height: normal; /* 無單位值: 字型大小 font-size的倍數 Unitless values: use this number multiplied by the element's font size */ line-height: 3.5; /* 長度值 <length> values */ line-height: 3em; /* 百分比值 <percentage> values */ line-height: 34%; /* 全域性值 Global values */ line-height: inherit; line-height: initial; line-height: unset;
標準,數位,長度值,百分比,繼承。
① 正常 行間距(預設): normal
1.2
,這取決於 元素的 字型。② 一個數位(無單位),字型大小的 倍數: number
(等同於 百分比值的簡寫)
font-size
。h1
不繼承父元素 div
的字型大小,段落 p
卻繼承 父元素div
的字型大小時font-size
不同時,能設定 相對於 子元素的 當前字型大小的行高.③ 長度值: length
④ 字型大小的 百分比值:%
font-size
。font-size
。⑤ 繼承父親: inherit
line-height
屬性的值。不能負值: 行高 不允許 負值,負值會被視作 無效值.
預設行高/行間距:
110%
~ 120%
。100%
的行間距line-height
< 字型大小font-size
時, 將出現 行距為負數的情況,也就是兩行文字 將部分重合。yes
1.5
。⑻ 行高 line-height
的 瀏覽器支援
.textTest { width: 450px; border: 10px dashed; padding: 10px; font-size: 16px; line-height: 1.5em; }
預設 文字行高 = normal 值 | 絕對長度值 行高 line-height: 40px; |
---|---|
相對長度值 行高 1.5em = 150% | 不帶單位 純數位 line-height: 1.5; |
1.5
= 1.5em
= 150%
font-size
,都是相對於 當前字型大小的 倍數.em,%
相對長度值的區別div
,進行 行高設定,內部的兩個子元素 h1,p
都不設定行高,看下內部元素的行高變化div > h1 | p
<div class="textTest"> <h1>業精於勤是一個漢語成語,拼音是 yè jīng yú qín,意思是指 學業的精進 在於勤奮。出處唐·韓愈《進學解》:「業精於勤,荒於嬉;行成於思,毀於隨。</h1> <p>業精於勤是一個漢語成語,拼音是 yè jīng yú qín,意思是指 學業的精進 在於勤奮。出處唐·韓愈《進學解》:「業精於勤,荒於嬉;行成於思,毀於隨。</p> </div>
.textTest { width: 450px; border: 10px dashed; padding: 10px; font-size: 16px; }
預設 文字行高 = normal 值 | 設定成 絕對長度值時: 25px (h1 的文字 行高太擠) |
---|---|
設定成 相對長度值: 1.5em = 150% | 設定成 純數位 不帶單位: line-height: 1.5; |
25px,1.5em= 150%=1.5 x 16px = 24px
div
內部的兩個子元素,應用了 一樣 行高值,即使他們的字型大小不同h1,p
分別設定了 相對於子元素自身字型大小的 行高h1
的行高 = h1
的字型大小 x 1.5
p
的行高 = p
的字型大小 x 1.5
punctuation-trim
屬性punctuation-trim: none|start|end|allow-end|adjacent;
none
start
allow-end
adjacent
text-align
text-align
屬性 設定元素中的 文字的 水平對齊方式。
行內內容(文字)的 水平對齊: 定義 行內內容(例如 文字)如何 相對它的 父塊元素 對齊。
text-align
不控制 文字的 最後一行:text-align-last
屬性: 指定文字 最後一行的 水平對齊方式通過指定 行框 與哪個點對齊
yes
text-align
的 語法
text-align
:left|right|center|justify|inherit
;/* 關鍵字值 Keyword values */ text-align: left; text-align: right; text-align: center; text-align: justify; /*下方的屬性值 支援度還不好 暫時不用少用*/ text-align: justify-all; text-align: start; text-align: end; text-align: match-parent; /* 表列中 基於字元的對齊 Character-based alignment in a table column */ text-align: "."; text-align: "." center; /* 塊對齊值 Block alignment values (非標準語法 Non-standard syntax) */ text-align: -moz-center; text-align: -webkit-center; /* 全域性值 Global values */ text-align: inherit; text-align: initial; text-align: unset;
left
direction:rlt
時 的預設值.right
direction:rlt
時 的預設值.center
justify
inherit
text-align
屬性的值。direction
屬性 相關聯direction
屬性是 ltr
,則預設值是left
;direction
是 rtl
,則為 right
。text-align
和 direction
屬性的 關聯影響
text-align
的時direction
屬性,文字的流向 會影響 水平對齊的預設值.direction:ltr
,文字會 左對齊direction:rtl
,文字會 右對齊direction
只會改變 文字的流向,不會再影響 對齊方式.⑹ 文字水平對齊 text-align
的 瀏覽器支援
範例1: 設定一段文字的 水平對齊方式
.textTest { width: 400px; border: 10px dashed; padding: 10px; font-size: 16px; margin: 10px; }
左對齊 text-align:left; | 右對齊 text-align:right; |
---|---|
居中對齊 text-align:center; | 兩端對齊 text-align:justify; |
auto
(下方 3 種設定方式,效果等同)margin: auto;
= ❷ margin: 0 auto;
margin-left: auto; margin-right: auto;
margin: 0 auto;
text-align-last
vertical-align
只對 行內元素、表格單元格元素 生效,不能用於 垂直對齊 塊級元素。text-align-last
的 語法
text-align-last
: auto | start | end | left | right | center | justify;
/* 關鍵字值 Keyword values */ vertical-align: baseline; vertical-align: sub; vertical-align: super; vertical-align: text-top; vertical-align: text-bottom; vertical-align: middle; vertical-align: top; vertical-align: bottom; /* 長度值 <length> values */ vertical-align: 10em; vertical-align: 4px; /* 百分比值 <percentage> values */ vertical-align: 20%; /* 全域性值 Global values */ vertical-align: inherit; vertical-align: initial; vertical-align: unset;
text-align-last
的 屬性值
text-align
關聯: auto
text-align
的值 對齊,text-align: justify
text-align-last: start
是一樣的,根據文字的方向 來決定.direction
關聯,參考起點: start
direction
的設定有關。direction :ltr
,則 起點在左側,則是左對齊;direction :rtl
,則 起點在右側,則是右對齊。direction
,則按照 瀏覽器文字的 預設顯示方向 來確定。direction
關聯,參考終點: end
start
值的 結果相反,是以 終點為參考的.left
right
center
justify
text-align-last
的 瀏覽器支援
需要使用 瀏覽器字首
.textTest { width: 400px; border: 10px dashed; padding: 10px; margin: 0 auto; font-size: 16px; /*文字水平對齊*/ text-align: left; /*文字最後一行 水平對齊*/ text-align-last: auto; }
① 預設顯示 | ② text-align-last: auto; |
---|---|
③ 起點對齊 text-align-last: start; | ④ 終點對齊 text-align-last: end; |
⑤ 左對齊 text-align-last: left; | ⑥ 右對齊 text-align-last: right; |
⑦ 居中對齊 text-align-last: center; | ⑧ 兩端對齊 text-align-last: justify; |
text-justify
text-align: justify
時text-justify: auto|inter-word|inter-character|distribute;
text-justify: none; text-justify: auto; text-justify: inter-word; text-justify: inter-character; text-justify: distribute; /* 已廢棄的屬性值 Deprecated value */
auto
none
text-align
一樣text-align
的元素上 禁用 兩端對齊效果的時候,可以使用.inter-word
word-spacing
的值)inter-character
letter-spacing
的值)distribute
(已廢棄 屬性值)inter-wrod
一致,不提倡使用 這個屬性,現在這個屬性 或許還能有效果,但那完全是為了 向後相容而被保留著。實驗中屬性,行為可能會發生變化
範例1:給一段文字設定 兩端對齊的水平對齊,並設定 兩端對齊時 空間的分隔方式
css
.textjustify{ width: 30%; background-color: #d0d0d0; padding: 10px; border: solid black 2px; font-size: 1.2em; /*text-align: justify;*/ /*text-justify:auto;*/ /*text-justify:none;*/ /*text-justify:inter-word;*/ /*text-justify:inter-character;*/ /*text-justify:distribute;*/ }
<p class="textjustify">金無足赤,人無完人。出自宋·戴復古《寄興》:「黃金無足色,白璧有微瑕。求人不求備,妾願老君家。」 也比喻不能要求一個人沒有一點缺點錯誤,應該嚴以律己,寬以待人。<br />No one is perfect, everyone will make mistakes,be strict with yourself and lenient toward others.</p>
預設 水平對齊 | 水平 兩端對齊 text-align: justify; ( 預設= text-justify:auto;) |
---|---|
禁用 兩端對齊 text-justify:none; | 調整 單詞間距離 inter-word |
調整 字元間距離 inter-character | 分散 distribute (已廢棄屬性值) |
auto
,會根據語言 自行進行空間分隔vertical-align
,美 ['vɝtɪkl]inline
)或 表格單元格(table-cell
)元素的 垂直對齊方式。vertical-align
.line-height = height
vertical-align
只對 ❶ 行內級的元素(inline-level elements
)、❷ 表格單元格元素 生效:不能用它 垂直對齊 塊級元素inline-level elements
):display
=inline
inline-block
inline-table
<img>
垂直放置在 一行文字中vertical-align
: baseline | sub | super | top | text-top | middle | bottom| text-bottom | length | % |inherit
;/* Keyword values */ vertical-align: baseline; vertical-align: sub; vertical-align: super; vertical-align: text-top; vertical-align: text-bottom; vertical-align: middle; vertical-align: top; vertical-align: bottom; /* <length> values */ vertical-align: 10em; vertical-align: 4px; /* <percentage> values */ vertical-align: 20%; /* Global values */ vertical-align: inherit; vertical-align: initial; vertical-align: unset;
① 相對父元素 的值
baseline
<textarea>
)的基線 ,沒有由 HTML規範指定,這意味著 它們對這個關鍵字的行為, 在不同的瀏覽器之間 可能有所不同。sub
super
text-top
text-bottom
❻ 父元素的 中線: middle
使 元素的中部 與 [父元素的基線 + 父元素x-height
(x的高度)的一半] 對齊。
length
%
line-height
」 屬性的百分比值 來排列此元素。line-height
屬性的 百分比。② 相對行的 值
top
bottom
③ 屬性值 的正負
baseline
(以及 sub
, super
, text-top
, text-bottom
, <length>
, <percentage>
)top
middle
bottom
x
的下邊緣)上一樣,baseline
)是super
⑹ 垂直對齊 vertical-align
的 瀏覽器支援
.verticalTest{ width: 700px; text-decoration: underline overline; font-size: 1.5em; /*line-height = font-size x 1.5 = 1.5em x 1.5 = 1.5 x 16 x 1.5*/ line-height: 1.5em; background-color: #d0d0d0; padding: 10px; border: 2px solid green; } .verticalTest img{ /* 10px/16px = 0.625 */ margin-right: 0.625em; }
<p class="verticalTest"> baseline: <img src="https://mdn.mozillademos.org/files/15189/star.png" alt="" style="vertical-align:baseline" /> sub: <img src="https://mdn.mozillademos.org/files/15189/star.png" alt="" style="vertical-align:sub" /> super: <img src="https://mdn.mozillademos.org/files/15189/star.png" alt="" style="vertical-align:super" /> text-top: <img src="https://mdn.mozillademos.org/files/15189/star.png" alt="" style="vertical-align:text-top" /> text-bottom: <img src="https://mdn.mozillademos.org/files/15189/star.png" alt="" style="vertical-align:text-bottom" /> middle: <img src="https://mdn.mozillademos.org/files/15189/star.png" alt="" style="vertical-align:middle" /> </p> <p class="verticalTest"> 0px:(基線重疊)= baseline <img src="https://mdn.mozillademos.org/files/15189/star.png" alt="" style="vertical-align:0px" /> 10px (父元素 基線上方10px) <img src="https://mdn.mozillademos.org/files/15189/star.png" alt="" style="vertical-align:10px" /> 0.5em: <img src="https://mdn.mozillademos.org/files/15189/star.png" alt="" style="vertical-align:0.5em" /> -0.5em: <img src="https://mdn.mozillademos.org/files/15189/star.png" alt="" style="vertical-align:-0.5em" />5 0%: <img src="https://mdn.mozillademos.org/files/15189/star.png" alt="" style="vertical-align:50%" /> -50%: <img src="https://mdn.mozillademos.org/files/15189/star.png" alt="" style="vertical-align:-50%" /> </p> <p class="verticalTest"> top: <img src="https://mdn.mozillademos.org/files/15189/star.png" alt="" style="vertical-align:top" /> bottom: <img src="https://mdn.mozillademos.org/files/15189/star.png" alt="" style="vertical-align:bottom" /> </p>
.verticalTable{ width: 50%; } table.verticalTable ,.verticalTable th,.verticalTable td{ border: 1px solid green; } .verticalTable td{ padding: 10px; background-color: #d0d0d0; }
<!-- 表格單元格內容的 垂直對齊 --> <table class="verticalTable"> <tr> <th>基線對齊</th> <th>行的頂部</th> <th>居中</th> <th>行的底部</th> <th>一段文字(未設定垂直對齊)</th> </tr> <tr> <td style="vertical-align: baseline">baseline</td> <td style="vertical-align:top">top</td> <td style="vertical-align:middle">middle</td> <td style="vertical-align: bottom">bottom</td> <td >自知之明, 是一個漢語成語,讀音為 zì zhī zhī míng,指了解自己的情況,能正確認識自己的 長處與短處。 出自《老子》。</td> </tr> </table>
使用 text-decoration
屬性, 文字裝飾 屬性
① 文字修飾的顏色
color
" 屬性設定。② 後代元素會繼承 裝飾線: 如果後代元素 沒有自己的裝飾,祖先元素上 設定的裝飾會 「延伸」到 後代元素中。
③ 簡寫屬性: text-decoration
屬性是一種 簡寫屬性,並且可以使用 普通屬性三個值中的任何一個。
text-decoration-line
underline
,刪除線line-through
text-decoration-color
text-decoration-style
wavy
,實線 solid
,虛線 dashed
text-decoration
:none|underline|overline|line-through|blink|inherit
;<'text-decoration-line'> || <'text-decoration-style'> || <'text-decoration-color'>
text-decoration
的 屬性值 (不做簡寫屬性時,只表示 裝飾線的位置)none
underline
overline
line-through
blink
inherit
text-decoration
屬性的 值。text-decoration
可以同時設定 裝飾線的位置,樣式 和 顏色.text-decoration
的 瀏覽器支援
IE ,Edge,不支援 text-decoration
為簡寫
.textdec { /*給文字 新增下劃線*/ text-decoration: underline; width: 30%; background-color: #d0d0d0; padding: 10px; line-height: 1.5em; } .textdec strong { /*取消強調文字的下劃線*/ text-decoration: none; color: green; }
<p class="textdec"> <strong>少壯不努力,老大徒傷悲。</strong>意思是,年輕力壯的時候 不奮發圖強,到了老年 再悲傷也沒用了。出處,《樂府詩集·長歌行》 </p>
strong
設定了 無下劃線strong
這裡 仍然 顯示下劃線,不能取消 從父元素繼承的 裝飾線,並且裝飾線 都是黑色的.strong {text-decoration: overline;}
將導致第二次裝飾 出現在「一些強調詞」上,而且上劃線顏色 是子元素 單獨設定的字型顏色..decline{ background-color: #d0d0d0; text-decoration:underline wavy #008000; /* text-decoration-line: underline; text-decoration-style:wavy; text-decoration-color: green;*/ }
<p class="decline"> <del>紙上得來終覺淺,</del>絕知此事要躬行。 </p>
text-decoration:underline wavy #008000;
屬性值 前後順序 不影響.text-decorator-line
設定用於元素中的文字的 裝飾型別(即 文字裝飾線型別 )。text-decorator-line
屬性 被指定為 none
、一個或多個 空格 分隔的 值。text-decoration-line
: none | [ underline || overline || line-through || blink ]
/* 單個 關鍵字值 Single keyword */ text-decoration-line: none; text-decoration-line: underline; text-decoration-line: overline; text-decoration-line: line-through; text-decoration-line: blink; /* 多個 關鍵字值,同時指定幾條裝飾線 Multiple keywords */ text-decoration-line: underline overline; /* Two decoration lines */ text-decoration-line: overline underline line-through; /* Multiple decoration lines */ /* 全域性值 Global values */ text-decoration-line: inherit; text-decoration-line: initial; text-decoration-line: unset;
none
underline
overline
line-through
blink
(已棄用的 屬性值)blink
的屬性值需要使用 瀏覽器字首
.decline{ background-color: #d0d0d0; text-decoration-line: overline; /*text-decoration-line: line-through;*/ /*text-decoration-line: underline;*/ /*text-decoration-line: blink;*/ }
<p class="decline"> 紙上得來終覺淺,絕知此事要躬行。 </p>
上劃線 overline | 刪除線(貫穿線) line-through |
---|---|
下劃線 underline | 閃爍 (無任何效果,blink 屬性值瀏覽器不支援) |
text-decoration-style
text-decoration-line
設定的 線的樣式。text-decoration-line
設定的線,不能為 其中的每條線 設定 不同的樣式。<del>
或 <s>
標籤text-decoration
簡寫屬性 會比分別寫多個屬性 更方便。text-decoration-style
: solid | double | dotted | dashed | wavy
/* 關鍵字值 Keyword values */ text-decoration-style: solid; text-decoration-style: double; text-decoration-style: dotted; text-decoration-style: dashed; text-decoration-style: wavy; /* 全域性值 Global values */ text-decoration-style: inherit; text-decoration-style: initial; text-decoration-style: unset;
solid
double
dotted
dashed
wavy
, 美 /ˈweɪvi/-moz-none
(尚未標準化)text-decoration-line: none
替代。IE 不支援, 其他瀏覽器 需要 瀏覽器字首
.decline{ background-color: #d0d0d0; text-decoration-line: underline; text-decoration-style:double; /*text-decoration-style:dotted;*/ /*text-decoration-style:dashed;*/ /*text-decoration-style:wavy;*/ }
雙實線 double | 點虛線 dotted |
---|---|
直虛線 dashed | 波浪線 wavy |
text-decoration-color
text-decoration-line
屬性 為每個元素 應用一種線型,再用 text-decoration-color
指定線的顏色。text-decoration-color
: <rgb()> | <rgba()> | <hsl()> | <hsla()> | <hex-color> | <named-color> | currentcolor | <deprecated-system-color>
.decline{ background-color: #d0d0d0; text-decoration-line: underline; text-decoration-style:wavy; text-decoration-color: green; } .decline del{ text-decoration-line: line-through; text-decoration-color:red; }
<p class="decline"> <del>紙上得來終覺淺,</del>絕知此事要躬行。 </p>
text-emphasis
美 ['ɛmfəsɪs] , 強調將強調標記 應用於文字(空格 和 控制字元除外)。
簡寫屬性 text-emphasis
:
text-emphasis-style
和 text-emphasis-color
。text-emphasis
不會重置 text-emphasis-position
位置 的值50%
.text-emphasis
可能會 影響行高。Kenten Generic OpenType Font
」 是一個適合 強調標記的字型text-emphasis: <'text-emphasis-style'> || <'text-emphasis-color'>;
/* 初始值 Initial value */ text-emphasis: none; /* No emphasis marks */ /* 字串值 <string> value */ text-emphasis: 'x'; text-emphasis: '點'; text-emphasis: '\25B2'; text-emphasis: '*' #555; text-emphasis: 'foo'; /* 不應使用。它可以僅被計算為「f」 或呈現為「f」 Should NOT use. It may be computed to or rendered as 'f' only */ /* 關鍵字值 Keywords value */ text-emphasis: filled; text-emphasis: open; text-emphasis: filled sesame; text-emphasis: open sesame; /* 關鍵詞值 與 顏色 相結合 Keywords value combined with a color */ text-emphasis: filled sesame #555; /* 全域性值 Global values */ text-emphasis: inherit; text-emphasis: initial; text-emphasis: unset;
text-emphasis
的屬性值
none
filled
filled
,也沒有 open
時,這是預設值.open
dot
filled dot
: •
(U+2022)◦
(U+25E6).circle
●
(U+25CF)○
(U+25CB).double-circle
◉
(U+25C9),◎
(U+25CE).triangle
▲
(U+25B2)△
(U+25B3).sesame
﹅
(U+FE45),﹆
(U+FE46).<string>
<string>
中 指定一個以上的字元.<color>
currentColor
。text-emphasis
和 文字裝飾線 text-decoration
的區別
text-decoration
文字裝飾線 屬性 不會繼承,並且指定的裝飾線 將應用於整個元素。text-emphasis
文字強調 會繼承,這意味著 可以為後代 更改強調標記。需要瀏覽器字首
範例 1: 給一段文字 新增文字強調符號
css
.textemphasis{ width: 35%; /*background-color: #d0d0d0;*/ padding: 10px; border: solid black 2px; font-size: 1.2em; } .textemphasis strong{ -webkit-text-emphasis-position:under; -webkit-text-emphasis:dot; -webkit-text-emphasis:open dot; /*-webkit-text-emphasis:circle;*/ /*-webkit-text-emphasis:open circle;*/ /*-webkit-text-emphasis:double-circle;*/ /*-webkit-text-emphasis:open double-circle;*/ /*-webkit-text-emphasis:triangle;*/ /*-webkit-text-emphasis:open triangle;*/ /*-webkit-text-emphasis:sesame;*/ /*-webkit-text-emphasis:open sesame;*/ /*指定字串 作為文字強調的符號*/ /*-webkit-text-emphasis:"z";*/ /*-webkit-text-emphasis:"x";*/ /*-webkit-text-emphasis:"大";*/ /*同時設定 空心/實心/強調符號/顏色*/ /*-webkit-text-emphasis: circle open;*/ /*-webkit-text-emphasis: circle open red;*/ }
<p class="textemphasis"> <strong>取其精華,去其糟粕。</strong>是一個漢語成語,讀音qǔ qí jīng huá qù qí zāo pò意思是吸取事物中最好的東西,捨棄事物中壞的,無用的東西。 </p>
小點: dot = filled dot | 小圓圈: open dot |
---|---|
大點: circle | 大圓圈: open circle |
實心 雙圓圈: double-circle | 空心 雙圓圈: open double-circle |
實心 三角形: triangle | 空心 三角形: open triangle |
實心 芝麻符: sesame | 空心 芝麻符: open sesame |
指定為 英文字元: "z" | 指定為 漢字: "大" |
預設 顏色/位置:circle | 指定 顏色/位置: circle open red |
① 預設的位置: 漢語中,不指定位置,文字強調符號的位置 預設 在上方
② 預設: 實心的.
③ 指定字元 不能指定空心/實心:
-webkit-text-emphasis:open "z";
,會直接跳過.視覺效果的 區別: 文字小的時候,有些 相同 文字強調符號 區別看起來不明顯.
text-emphasis-style
text-emphasis
來 設定和重置。text-emphasis-style:none | [ [ filled | open ] || [ dot | circle | double-circle | triangle | sesame ] ] | <string>
;/* 初始值 Initial value */ text-emphasis-style: none; /* 沒有強調符號 No emphasis marks */ /* 值 value */ text-emphasis-style: 'x'; text-emphasis-style: '點'; text-emphasis-style: '\25B2'; text-emphasis-style: '*'; text-emphasis-style: 'foo'; /* 不應使用。它可以僅被計算為「f」或呈現為「f」 Should NOT use. It may be computed to or rendered as 'f' only */ /* 關鍵字值 Keywords value */ text-emphasis-style: filled; text-emphasis-style: open; text-emphasis-style: filled sesame; text-emphasis-style: open sesame; /* 全域性值 Global values */ text-emphasis-style: inherit; text-emphasis-style: initial; text-emphasis-style: unset;
⑶ 文字強調 形狀樣式的 屬性值**
filled
filled
,也沒有 open
時,這是預設值.open
dot
filled dot
: •
(U+2022)◦
(U+25E6).circle
●
(U+25CF)○
(U+25CB).double-circle
◉
(U+25C9),◎
(U+25CE).triangle
▲
(U+25B2)△
(U+25B3).sesame
﹅
(U+FE45),﹆
(U+FE46).<string>
<string>
中 指定一個以上的字元.需要使用 瀏覽器字首
text-emphasis-color
text-emphasis
設定此值。text-emphasis-color: <rgb()> | <rgba()> | <hsl()> | <hsla()> | <hex-color> | <named-color> | currentcolor | <deprecated-system-color>;
/* 初始值 Initial value */ text-emphasis-color: currentColor; /* 合法顏色值 <color> */ text-emphasis-color: #555; text-emphasis-color: blue; text-emphasis-color: rgba(90, 200, 160, 0.8); text-emphasis-color: transparent; /* 全域性值 Global values */ text-emphasis-color: inherit; text-emphasis-color: initial; text-emphasis-color: unset;
需要 瀏覽器字首
text-emphasis-position
text-emphasis-position: [ over | under ] && [ right | left ];
/* 初始值 Initial value */ text-emphasis-position: over right; /* 關鍵字值 Keywords value */ text-emphasis-position: over left; text-emphasis-position: under right; text-emphasis-position: under left; text-emphasis-position: left over; text-emphasis-position: right under; text-emphasis-position: left under; /* 全域性值 Global values */ text-emphasis-position: inherit; text-emphasis-position: initial; text-emphasis-position: unset;
over
under
right
left
語言 | 文字強調符號的首選位置 | ||||
---|---|---|---|---|---|
水平 書寫模式 | 垂直 書寫模式 | ||||
① 日語 | 上方 over | 右邊 right | |||
② 韓語 | |||||
③ 蒙古語 | |||||
④ 漢語 | 下方 under | 右邊 right |
需要 瀏覽器字首
text-indent
, 美 /ɪn’dɛnt/text-indent:length|%|inherit;
/* 長度值 <length> values */ text-indent: 3mm; text-indent: 40px; /* 百分比值 相對於 包含自身的元素的 寬度 <percentage> value relative to the containing block width */ text-indent: 15%; /* 關鍵字值 目前尚未標準化 不要使用 Keyword values */ text-indent: 5em each-line; text-indent: 5em hanging; text-indent: 5em hanging each-line; /* 全域性值 Global values */ text-indent: inherit; text-indent: initial; text-indent: unset;
length
<length>
長度值 來指定 文字的縮排。0
。%
inherit
text-indent
屬性的值。each-line
(實驗中屬性,尚未標準化)<br>
強制斷行後的 第一行。hanging
(實驗中屬性,尚未標準化)⑸ 文字縮排的 瀏覽器支援
.textindent { width: 40%; background-color: #d0d0d0; padding: 10px; /*設定文字縮排*/ text-indent: 50px; /* text-indent: 3em; text-indent: -2em; text-indent: 10%;*/ }
<p class="textindent"> 「<strong>勿以惡小而為之,勿以善小而不為。</strong>惟賢惟德,能服於人。」 勸人要進德修業,有所作為。不要因為好事小 而不做,更不能因為壞事小 而去做。小善積多了,就成為利天下的大善,而小惡積多了則 「足以亂國家」。 </p>
文字不設定縮排時的 預設樣式
絕對值縮排 50px | 相對值縮排 3em |
---|---|
負值縮排 (懸掛縮排) -2em | 百分比縮排 10% |
text-outline
屬性。text-outline
屬性text-outline: thickness blur color
;text-overflow
可以 剪下它、顯示省略號(’…’)或顯示 自定義字串。
text-overflow
屬性的適用物件
text-overflow
和 文字溢位 的關係
overflow
,white-space
,如 ↓overflow: hidden;white-space: nowrap;
white-space:nowrap
)text-overflow: [ clip | ellipsis | <string> ]{1,2};
/* 行尾的 溢位行為 Overflow behavior at line end Right end if ltr, left end if rtl */ text-overflow: clip; text-overflow: ellipsis; text-overflow: "…"; text-overflow: fade; text-overflow: fade(10px); text-overflow: fade(5%); /* 溢位 在左端|在右端的行為 ,方向性 沒有影響 Overflow behavior at left end | at right end Directionality has no influence */ text-overflow: clip ellipsis; text-overflow: "…" "…"; text-overflow: fade clip; text-overflow: fade(10px) fade(10px); text-overflow: fade(5%) fade(5%); /* 全域性值 Global values */ text-overflow: inherit; text-overflow: initial; text-overflow: unset;
clip
''
)ellipsis
…
’, U+2026 HORIZONTAL ELLIPSIS
)來表示 被截斷的文字」。string
<string>
= 被截斷的文字。''
).clip
,ellipsis
, fade
<string>.
fade()
函數overflow
和 text-overflow
的區別
overflow
hidden
隱藏scroll
卷軸顯示visible
溢位顯示text-overflow
overflow:hidden
,只有這樣text-overflow
才有效text-overflow
的屬性值 是建立在 有隱藏的溢位內容 的基礎上width: 100%; /*也可以是固定值、min-width這些*/ white-space: nowrap; /*強制文字不能換行*/ overflow: hidden; /*隱藏溢位內容*/ text-overflow: ellipsis;
<a>
、<span>
這種 行內元素,必須加上display: block
成為塊元素width
.-ms-text-overflow
,和text-overflow
作用相同。但是並不推薦這樣使用。-o-text-overflow
。倒數四個 都是實驗中屬性,支援度也很差
.textjoverflow{ width: 30%; background-color: #d0d0d0; padding: 10px; border: solid black 2px; font-size: 1.2em; /*設定不換行,才會有文字溢位*/ white-space: nowrap; /*設定 overflow 溢位隱藏,文字溢位顯示 才有效*/ overflow: hidden; text-overflow: clip; /*text-overflow: ellipsis;*/ /*目前不支援 指定字串 所以此值無效*/ /*text-overflow: "";*/ /*direction: rtl;*/ }
<p class="textjoverflow">金無足赤,人無完人。「黃金無足色,白璧有微瑕。求人不求備,妾願老君家。」 <br />No one is perfect, everyone will make mistakes.</p>
預設顯示 | 不允許換行時的 預設溢位顯示 |
---|---|
溢位文字 被隱藏 overflow: hidden; | 隱藏的溢位文字 被裁剪 (預設值) text-overflow: clip; |
隱藏的溢位文字 = 省略號 text-overflow: ellipsis; | 文字流向 從右向左 direction: rtl; (行尾溢位) |
text-overflow
有效的 前提
display: block
,行內元素不可以white-space: nowrap;
overflow: hidden;
text-overflow
才會有效.text-transform
, 美 /trænsˈfɔːrm/text-transform
屬性考慮到 特定於語言的 案例對映規則,如以下所示:i
: Turkish (tr), Azerbaijani (az), Crimean Tatar (crh), Volga Tatar (tt), and Bashkir (ba),有兩種 i
,帶點和不帶點,兩個大小寫配對i/İ
和ı/I.
ß
的大寫 變成SS
ij
變成 IJ
,即使只設定 首字母大寫 text-transform: capitalize
ά/Α
, (ή/Ή
除外).άι/ΑΪ
σ
and ς
ς
僅在西格瑪 終止一個單詞時使用Σ
轉化成 小寫西格瑪時 text-transform: lowercase
,瀏覽器 需要根據上下文 選擇正確的小寫形式。text-transform:none|capitalize|uppercase|lowercase|inherit
;/* 關鍵字值 Keyword values */ text-transform: none; text-transform: capitalize; text-transform: uppercase; text-transform: lowercase; text-transform: full-width; text-transform: full-size-kana; /* 全域性值 Global values */ text-transform: inherit; text-transform: initial; text-transform: unset;
none
capitalize
uppercase
lowercase
inherit
text-transform
屬性的值。w3-school
」 可以用兩種方式顯示:W3-school
」 和 「W3-School
」。.texttransform{ width: 35%; background-color: #d0d0d0; padding: 10px; font-weight: bold; font-size: 1.2em; /*改變文字的大小寫*/ /*text-transform:capitalize;*/ /*text-transform:uppercase;*/ /*text-transform:lowercase;*/ }
<p class="texttransform">金無足赤,人無完人。<br />No one is perfect, everyone will make mistakes.</p>
預設樣式 | 首字母大寫 capitalize |
---|---|
全大寫 uppercase | 全小寫 lowercase |
text-shadow
text-decoration
新增陰影text-shadow
: h-shadow v-shadow blur color;
/* x 偏移量 offset-x | y 偏移量 offset-y | 模糊半徑 blur-radius | 顏色 color */ text-shadow: 1px 1px 2px black; /* color | offset-x | offset-y | blur-radius */ text-shadow: #fc0 1px 0 10px; /* offset-x | offset-y | color */ text-shadow: 5px 5px #558abb; /* color | offset-x | offset-y */ text-shadow: white 2px 5px; /* offset-x | offset-y /* 使用預設的 顏色和模糊半徑 */ text-shadow: 5px 10px; /* 全域性值 Global values */ text-shadow: inherit; text-shadow: initial; text-shadow: unset;
正值:右下方,負值:左上方
① 水平陰影 偏移量(必需): h-shadow
<offset-x>
指定 水平偏移量② 垂直陰影 偏移量( 必需): v-shadow
<offset-y>
指定 垂直偏移量0
,則 陰影位於文字 正後方③ 模糊距離: blur
<length>
值。0
。④ 陰影顏色: color
UA
(使用者代理)自行選擇的顏色。,
分隔 的 陰影列表0
。<length>
引數<offset-x>
<offset-y>
的值;<length>
引數<blur-radius>
。⑸ 陰影 應用順序: 當所給的陰影 大於 1 個時,陰影應用的順序 為 從前到後
⑹ 文字陰影 適用的偽元素:
::first-line
以及::first-letter
偽元素.6-9
個文字陰影。模糊半徑 限制為 100px
。<color>
值 未指定,那麼 Firefox 將使用元素的 color
屬性值。IE 10 才開始支援
.textshadow{ width: 40%; background-color: #d0d0d0; padding: 10px; font-weight: bold; font-size: 1.5em; text-shadow:3px 3px green ; }
<p class="textshadow">海納百川,有容乃大;壁立千仞,無欲則剛。</p>
設定 水平和垂直陰影 text-shadow:3px 3px; | 設定指定顏色的 水平和垂直陰影 |
---|---|
設定 帶模糊距離的 x,y 陰影偏移量 text-shadow:3px 3px 1px green; | 加大模糊半徑 text-shadow:3px 3px 10px green; |
x 陰影偏移量 負值 (向左偏移) | y 陰影偏移量 負值 (向上偏移) |
text-shadow:3px green;
text-shadow:3px 3px green;
text-wrap
屬性。text-wrap
屬性text-wrap: normal|none|unrestricted|suppress
;unicode-bidi
屬性和direction
屬性搭配, 決定 如何處理檔案中 的 雙向文字 (雙向文字 處理)。Unicode
統一碼演演算法 來決定 如何顯示文字。unicode-bidi
屬性 覆蓋了 這個 Unicode
統一碼演演算法,允許開發人員 控制文字嵌入。all
屬性影響: unicode-bidi
與 direction
是僅有的兩個 不受 all
屬性 影響的屬性。unicode-bidi
:normal | embed | isolate | bidi-override | isolate-override | plaintext
;/* 關鍵字值 Keyword values */ unicode-bidi: normal; unicode-bidi: embed; unicode-bidi: isolate; unicode-bidi: bidi-override; unicode-bidi: isolate-override; unicode-bidi: plaintext; /* 全域性值 Global values */ unicode-bidi: inherit; unicode-bidi: initial; unicode-bidi: unset;
unicode-bidi
的 屬性值
normal
embed
direction
屬性給出。direction
屬性的值 指定嵌入層的方向,在物件內部 進行 隱式 重排序bidi-override
direction
屬性 嚴格 按順序 重新排序;direction
屬性的值重排序isolate
isolate-override
isolation
關鍵字的隔離行為 應用於 周圍的內容bidi-override
關鍵字的覆蓋行為 應用於 內部內容plaintext
direction
屬性的值。Unicode
雙向演演算法的 P2
和 P3
規則 計算的。Unicode
雙向演演算法的工具 進行格式化的資料。unicode-bidi
的 瀏覽器支援
最新的 3 個屬性值的支援度 不好,要使用字首
direction
屬性,給一段文字分別設定 normal,embed,bidi-override
屬性值direction: ltr;
,分別設定 上方三個值,文字 沒有變化.direction: rtl;
,分別設定 上方三個值,文字變化 如下:文字流向 左到右時 direction: ltr; | 文字流向 右到左時: direction: rtl; (配 normal 值) |
---|---|
嵌入,不重寫/覆蓋 unicode-bidi: embed; | 嵌入,嚴格重寫/覆蓋 unicode-bidi: bidi-override; |
word-break
屬性word-break:normal | break-all | keep-all | break-word;
/* 關鍵字值 Keyword values */ word-break: normal; word-break: break-all; word-break: keep-all; word-break: break-word; /* deprecated 已廢棄 */ /* 全域性值 Global values */ word-break: inherit; word-break: initial; word-break: unset;
normal
break-all
non-CJK
(CJK = 指中文/日文/韓文) 文字,可在 任意字元間 斷行。keep-all
CJK
文字: 不能隨意斷行,只能在 斷點處,一般是 標點符號的位置斷行,句子太長,可能會溢位。Non-CJK
文字: 表現 同 瀏覽器預設行為 normal
。break-word
word-break: normal
和overflow-wrap: anywhere
具有相同的效果,而不考慮overflow-wrap
屬性的 實際值。⑷ 單詞換行/斷行 位置的 瀏覽器支援
範例1: 給一段文字 設定 單詞斷行位置
css
.wordbreak{ width: 30%; background-color: #d0d0d0; padding: 10px; border: solid black 2px; font-size: 1.2em; /*單詞換行處 設定*/ word-break: normal; /*word-break: break-all;*/ /*word-break: keep-all;*/ /*word-break: break-word;*/ }
<p class="wordbreak">金無足赤,人無完人。出自宋·戴復古《寄興》:「黃金無足色,白璧有微瑕。求人不求備,妾願老君家。」 也比喻不能要求一個人沒有一點缺點錯誤,應該嚴以律己,寬以待人。<br />No one is perfect, everyone will make mistakes,be strict with yourself and lenient toward others.</p>
預設顯示 = word-break: normal; | 任意處斷行(可單詞內斷行) word-break: break-all; |
---|---|
不能單詞內斷行 (中日韓 不斷行) word-break: keep-all; | 單詞處斷行 = = word-break: normal; |
⑴ 單詞 斷行時的 斷行方式 : word-wrap
屬性
⑵ 重新命名和別名:
word-wrap
屬性 原本屬於微軟的 一個私有屬性overflow-wrap
。word-wrap
現在被當作 overflow-wrap
的 「別名」。word-wrap
屬性名,目前 瀏覽器支援度更好些.word-wrap: normal | break-word | anywhere;
/* 關鍵字值 Keyword values */ overflow-wrap: normal; overflow-wrap: break-word; overflow-wrap: anywhere; /* 全域性值 Global values */ overflow-wrap: inherit; overflow-wrap: initial; overflow-wrap: unset;
normal
break-word
anywhere
(瀏覽器支援度 很差,不要使用)word-break
和 word-wrap
的 區別 .word
單詞 的概念word-break
強調的是: 能否 單詞內的斷句,範圍是 全部文字.word-wrap
強調的是: 單詞內 斷句方式,範圍是 需要斷句的文字.word-wrap:break-word
與 word-break:break-all
共同點:word-wrap:break-word
: 會 先起一個新行 來放置長單詞,新的行 還是放不下這個長單詞 則會對長單詞 進行強制斷句;word-break:break-all
: 不會 把長單詞 放在一個新行裡,當這一行 放不下的時候 就直接 強制斷句了。word-wrap
名稱, 比 overflow-wrap
屬性名 瀏覽器支援度更好anywhere
屬性值 不要使用,支援度很差
.wordbreak{ width: 20%; background-color: #d0d0d0; padding: 10px; border: solid black 2px; font-size: 1.2em; /*單詞換行處 設定*/ /*word-break: normal;*/ /*word-break: break-all;*/ /*word-break: keep-all;*/ /*word-break: break-word;*/ } .wordwrap{ /*單詞 斷行位置*/ /*word-wrap: normal;*/ /*word-wrap: break-word;*/ }
<p class="wordbreak wordwrap">金無足赤,人無完人。出自宋·戴復古《寄興》:「黃金無足色,白璧有微瑕。求人不求備,妾願老君家。」 也比喻不能要求一個人沒有一點缺點錯誤,應該嚴以律己,寬以待人。<br /> No one is perfect, everyone will make mistakes,be strict with yourself and lenient toward others.Nooneisperfecteveryonewillmakemistakes</p>
word-break: normal;
= word-wrap: normal;
可詞內斷行 word-break: break-all; | 長單詞 強制斷行 word-wrap: break-word; |
---|---|
不允許 詞內斷行 word-break: keep-all; | 同時設定 不允許 詞內斷行 word-break: keep-all; 和 強制長單詞 斷行 word-wrap: break-word; |
word-break: break-all;
和 長單詞 強制斷行 word-wrap: break-word;
word-break: keep-all;
和 強制長單詞 斷行 word-wrap: break-word;
word-spacing
屬性word-spacing:normal|<length> | <percentage>|inherit;
/* 關鍵字值 Keyword value */ word-spacing: normal; /* 長度值 <length> values */ word-spacing: 3px; word-spacing: 0.3em; /* 百分比值 <percentage> values */ word-spacing: 50%; word-spacing: 200%; /* 全域性值 Global values */ word-spacing: inherit; word-spacing: initial; word-spacing: unset;
normal
word-spacing: 0;
length
<percentage>
(瀏覽器支援度很差,勿用)inherit
word-spacing
屬性的值。⑷ 單詞/字間距的 瀏覽器支援
.wordspace { width: 25%; background-color: #d0d0d0; padding: 10px; border: solid black 2px; font-size: 1.1em; /*設定單詞/字 之間的距離*/ word-spacing: normal; /*word-spacing:4px;*/ /*word-spacing:-4px;*/ /*word-spacing:1em;*/ /*word-spacing:-1em;*/ /*百分比值 目前各大主流瀏覽器 不支援*/ /*word-spacing:10%;*/ }
<p class="wordspace">金無 足赤,人無 完人。比喻 不能要求一個人 沒有一點缺點錯誤,應該 嚴以律己,寬以待人。 <br />No one is perfect, everyone will make mistakes,be strict with yourself and lenient toward others.</p>
word-spacing: normal;
word-spacing
的影響單詞/字間距 增加 word-spacing:4px; | 單詞/字間距 減少 word-spacing:-4px; |
---|---|
單詞/字間距 增加 word-spacing:1em; | 單詞/字間距 減少 word-spacing:-1em; |
white-space
屬性pre-wrap
和 pre-line
是 CSS 2.1 中新增的。white-space:normal|nowrap |pre|pre-line||pre-wrap| inherit;
/* 關鍵字值 Keyword values */ white-space: normal; white-space: nowrap; white-space: pre; white-space: pre-wrap; white-space: pre-line; white-space: break-spaces; /* 全域性值 Global values */ white-space: inherit; white-space: initial; white-space: unset;
normal
nowrap
<br>
標籤 為止。pre
<br>
元素時 才會換行。<pre>
標籤。pre-wrap
<br>
元素,填充行框 需要換行時,會換行pre-line
<br>
元素,填充行框 需要換行時,會換行break-spaces
pre-wrap
的行為 相同,除了:inherit
white-space
屬性的值。white-space
屬性值 之間的區別屬性值 | 換行 | 空格和製表符 | 自動換行 | 行尾空格 |
---|---|---|---|---|
normal | 合併 | 合併 | 自動換行 | 刪除 |
nowrap | 合併 | 合併 | 不自動換行 | 刪除 |
pre | 保留 | 保留 | 不自動換行 | 保留 |
pre-wrap | 保留 | 保留 | 自動換行 | Hang |
pre-line | 保留 | 合併 | 自動換行 | 刪除 |
break-spaces | 保留 | 保留 | 自動換行 | Wrap 保留的空格字元后 都存在換行機會 |
① 預設值 normal
和 nowrap
的區別
normal
還可以 在文字需要換行時,自動換行, nowrap
則不可以自動換行,沒有<br />
換行標籤,就只能是一行.② pre
和 pre-wrap
的 區別
pre-wrap
增加了 自動換行, 可以 在文字需要換行時,自動換行, pre
則不可以.③ pre
和 pre-line
的 區別
pre-line
不保留空格,且增加了 自動換行④ 不換行 nowrap
和 預格式 pre
的共同點
⑸ 空白/換行處理的 瀏覽器支援
.whitespace{ width: 25%; background-color: #d0d0d0; padding: 10px; border: solid black 2px; font-size: 1.1em; white-space:normal; white-space:nowrap; white-space:pre; white-space:pre-wrap; white-space:pre-line; /*white-space:break-space;*/ }
<p class="whitespace"> <strong> 《題烏江亭》 </strong> 唐代·杜牧 <b>勝敗兵家事不期,包羞忍恥是男兒。</b> <b>江東子弟多才俊,捲土重來未可知。</b> <br /> 譯文: 勝敗乃是兵家常事,難以事前預料。能夠忍辱負重,才是真正男兒。 西楚霸王啊,江東子弟人才濟濟,若能重整旗鼓捲土殺回,楚漢相爭,誰輸誰贏還很難說。 </p>
white-space:normal;
不換行 white-space:nowrap; | 預格式 保留空格和換行 white-space:pre; |
---|---|
預格式+自動換行 white-space:pre-wrap; | 只保留換行+自動換行 white-space:pre-line; |
(學習視訊分享:)
以上就是詳解CSS 文字屬性(Text)的詳細內容,更多請關注TW511.COM其它相關文章!