CSS3 文本效果
CSS3中包含幾個新的文本特征。
在本章中您將了解以下文本屬性:
-
text-shadow屬性適用于文本陰影 -
box-shadow屬性適用于盒子陰影 text-overflowword-wrapword-break
瀏覽器支持

CSS3 的文本陰影
CSS3 中,text-shadow屬性適用于文本陰影。

您指定了水平陰影,垂直陰影,模糊的距離,以及陰影的顏色:
實例
給標題添加陰影:
h1{
text-shadow: 5px 5px 5px #FF0000;
}
CSS3 box-shadow屬性
CSS3 中 CSS3 box-shadow 屬性適用于盒子陰影
實例
div {
box-shadow: 10px 10px;
}

接下來給陰影添加顏色
實例
div {
box-shadow: 10px 10px grey;
}

接下來給陰影添加一個模糊效果
實例
div {
box-shadow: 10px 10px 5px grey;
}

你也可以在 ::before 和 ::after 兩個偽元素中添加陰影效果
實例
#boxshadow {
position: relative;
box-shadow: 1px 2px 4px rgba(0, 0, 0, .5);
padding: 10px;
background: white;
}
#boxshadow img {
width: 100%; border: 1px solid #8a4419;
border-style: inset;
}
#boxshadow::after {
content: '';
position: absolute;
z-index: -1; /* hide shadow behind image */
box-shadow: 0 15px 20px rgba(0, 0, 0, 0.3);
width: 70%; left: 15%; /* one half of the remaining 30% */
height: 100px;
bottom: 0;
}
陰影的一個使用特例是卡片效果
實例
div.card {
width: 250px;
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
text-align: center;
}


CSS3 Text Overflow屬性
CSS3文本溢出屬性指定應向用戶如何顯示溢出內容
實例
p.test1 {
white-space: nowrap;
width: 200px;
border: 1px solid #000000;
overflow: hidden;
text-overflow: clip;
}
p.test2 {
white-space: nowrap;
width: 200px;
border: 1px solid #000000;
overflow: hidden;
text-overflow: ellipsis;
}

CSS3的換行
如果某個單詞太長,不適合在一個區(qū)域內,它擴展到外面:
CSS3中,自動換行屬性允許您強制文本換行 - 即使這意味著分裂它中間的一個字:
CSS代碼如下:
實例
允許長文本換行:
p {word-wrap:break-word;}

CSS3 單詞拆分換行
CSS3 單詞拆分換行屬性指定換行規(guī)則:
CSS代碼如下:
實例
p.test1 { word-break: keep-all;}
p.test2 { word-break: break-all;}
新文本屬性
| 屬性 | 描述 | CSS |
|---|---|---|
| hanging-punctuation | 規(guī)定標點字符是否位于線框之外。 | 3 |
| punctuation-trim | 規(guī)定是否對標點字符進行修剪。 | 3 |
| text-align-last | 設置如何對齊最后一行或緊挨著強制換行符之前的行。 | 3 |
| text-emphasis | 向元素的文本應用重點標記以及重點標記的前景色。 | 3 |
| text-justify | 規(guī)定當 text-align 設置為 "justify" 時所使用的對齊方法。 | 3 |
| text-outline | 規(guī)定文本的輪廓。 | 3 |
| text-overflow | 規(guī)定當文本溢出包含元素時發(fā)生的事情。 | 3 |
| text-shadow | 向文本添加陰影。 | 3 |
| text-wrap | 規(guī)定文本的換行規(guī)則。 | 3 |
| word-break | 規(guī)定非中日韓文本的換行規(guī)則。 | 3 |
| word-wrap | 允許對長的不可分割的單詞進行分割并換行到下一行。 | 3 |
CSS3 字體

CSS3 @font-face 規(guī)則
以前CSS3的版本,網頁設計師不得不使用用戶計算機上已經安裝的字體。
使用CSS3,網頁設計師可以使用他/她喜歡的任何字體。
當你發(fā)現(xiàn)您要使用的字體文件時,只需簡單的將字體文件包含在網站中,它會自動下載給需要的用戶。
您所選擇的字體在新的CSS3版本有關于@font-face規(guī)則描述。
您"自己的"的字體是在 CSS3 @font-face 規(guī)則中定義的。
瀏覽器支持
表格中的數(shù)字表示支持該屬性的第一個瀏覽器版本號。
屬性

<small>Internet Explorer 9+, Firefox, Chrome, Safari, 和 Opera 支持 WOFF (Web Open Font Format) 字體.
Firefox, Chrome, Safari, 和 Opera 支持 .ttf(True Type字體)和.otf(OpenType)字體字體類型)。
Chrome, Safari 和 Opera 也支持 SVG 字體/折疊.
Internet Explorer 同樣支持 EOT (Embedded OpenType) 字體.
注意: Internet Explorer 8 以及更早的版本不支持新的 @font-face 規(guī)則。</small>
使用您需要的字體
在新的 @font-face 規(guī)則中,您必須首先定義字體的名稱(比如 myFirstFont),然后指向該字體文件。
提示:URL請使用小寫字母的字體,大寫字母在IE中會產生意外的結果
如需為 HTML 元素使用字體,請通過 font-family 屬性來引用字體的名稱 (myFirstFont):
實例
<style>
@font-face{
font-family: myFirstFont;
src: url(sansation_light.woff);
}
div{
font-family:myFirstFont;
}
</style>
使用粗體文本
您必須添加另一個包含粗體文字的@font-face規(guī)則:
實例
@font-face{
font-family: myFirstFont;
src: url(sansation_bold.woff);
font-weight:bold;
}
嘗試一下 ?
該文件"Sansation_Bold.ttf"是另一種字體文件,包含Sansation字體的粗體字。
瀏覽器使用這一文本的字體系列"myFirstFont"時應該呈現(xiàn)為粗體。
這樣你就可以有許多相同的字體@font-face的規(guī)則。
CSS3 字體描述
下表列出了所有的字體描述和里面的@font-face規(guī)則定義:
| 描述符 | 值 | 描述 |
|---|---|---|
| font-family | name | 必需。規(guī)定字體的名稱。 |
| src | URL | 必需。定義字體文件的 URL。 |
| font-stretch | normal ? condensed ? ultra-condensed ? extra-condensed ? semi-condensed ? expanded ? semi-expanded ? extra-expanded ? ultra-expanded |
可選。定義如何拉伸字體。默認是 "normal"。 |
| font-style | normal ? italic ? oblique |
可選。定義字體的樣式。默認是 "normal"。 |
| font-weight | normal ? bold ? 100 ? 200 ? 300 ? 400 ? 500 ? 600 ? 700 ? 800 ? 900 |
可選。定義字體的粗細。默認是 "normal"。 |
| unicode-range | unicode-range | 可選。定義字體支持的 UNICODE 字符范圍。默認是 "U+0-10FFFF"。 |