• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 319, comments - 22, trackbacks - 0, articles - 11
              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

            [學(xué)習(xí)筆記] CSS 樣式筆記 (樣式文本)

            Posted on 2011-05-28 20:56 RTY 閱讀(223) 評論(0)  編輯 收藏 引用 所屬分類: CSS

            CSS 文本屬性可定義文本的外觀。

            通過文本屬性,您可以改變文本的顏色、字符間距,對齊文本,裝飾文本,對文本進(jìn)行縮進(jìn),等等。

            縮進(jìn)文本

            把 Web 頁面上的段落的第一行縮進(jìn),這是一種最常用的文本格式化效果。

            CSS 提供了 text-indent 屬性,該屬性可以方便地實(shí)現(xiàn)文本縮進(jìn)。

            通過使用 text-indent 屬性,所有元素的第一行都可以縮進(jìn)一個給定的長度,甚至該長度可以是負(fù)值。

            這個屬性最常見的用途是將段落的首行縮進(jìn),下面的規(guī)則會使所有段落的首行縮進(jìn) 5 em:

            p {text-indent: 5em;}

            注意:一般來說,可以為所有塊級元素應(yīng)用 text-indent,但無法將該屬性應(yīng)用于行內(nèi)元素,圖像之類的替換元素上也無法應(yīng)用 text-indent 屬性。不過,如果一個塊級元素(比如段落)的首行中有一個圖像,它會隨該行的其余文本移動。

            提示:如果想把一個行內(nèi)元素的第一行“縮進(jìn)”,可以用左內(nèi)邊距或外邊距創(chuàng)造這種效果。

            使用負(fù)值

            text-indent 還可以設(shè)置為負(fù)值。利用這種技術(shù),可以實(shí)現(xiàn)很多有趣的效果,比如“懸掛縮進(jìn)”,即第一行懸掛在元素中余下部分的左邊:

            p {text-indent: -5em;}

            不過在為 text-indent 設(shè)置負(fù)值時要當(dāng)心,如果對一個段落設(shè)置了負(fù)值,那么首行的某些文本可能會超出瀏覽器窗口的左邊界。為了避免出現(xiàn)這種顯示問題,建議針對負(fù)縮進(jìn)再設(shè)置一個外邊距或一些內(nèi)邊距:

            p {text-indent: -5em; padding-left: 5em;}

            使用百分比值

            text-indent 可以使用所有長度單位,包括百分比值。

            百分?jǐn)?shù)要相對于縮進(jìn)元素父元素的寬度。換句話說,如果將縮進(jìn)值設(shè)置為 20%,所影響元素的第一行會縮進(jìn)其父元素寬度的 20%。

            在下例中,縮進(jìn)值是父元素的 20%,即 100 個像素:

            div {width: 500px;} p {text-indent: 20%;}  <div> <p>this is a paragragh</p> </div> 

            繼承

            text-indent 屬性可以繼承,請考慮如下標(biāo)記:

            div#outer {width: 500px;} div#inner {text-indent: 10%;} p {width: 200px;}  <div id="outer"> <div id="inner">some text. some text. some text. <p>this is a paragragh.</p> </div> </div> 

            以上標(biāo)記中的段落也會縮進(jìn) 50 像素,這是因?yàn)檫@個段落繼承了 id 為 inner 的 div 元素的縮進(jìn)值。

            水平對齊

            text-align 是一個基本的屬性,它會影響一個元素中的文本行互相之間的對齊方式。它的前 3 個值相當(dāng)直接,不過第 4 個和第 5 個則略有些復(fù)雜。

            值 left、right 和 center 會導(dǎo)致元素中的文本分別左對齊、右對齊和居中。

            西方語言都是從左向右讀,所有 text-align 的默認(rèn)值是 left。文本在左邊界對齊,右邊界呈鋸齒狀(稱為“從左到右”文本)。對于希伯來語和阿拉伯語之類的的語言,text-align 則默認(rèn)為 right,因?yàn)檫@些語言從右向左讀。不出所料,center 會使每個文本行在元素中居中。

            提示:將塊級元素或表元素居中,要通過在這些元素上適當(dāng)?shù)卦O(shè)置左、右外邊距來實(shí)現(xiàn)。

            text-align:center 與 <CENTER>

            您可能會認(rèn)為 text-align:center 與 <CENTER> 元素的作用一樣,但實(shí)際上二者大不相同。

            <CENTER> 不僅影響文本,還會把整個元素居中。text-align 不會控制元素的對齊,而只影響內(nèi)部內(nèi)容。元素本身不會從一段移到另一端,只是其中的文本受影響。

            justify

            最后一個水平對齊屬性是 justify。

            在兩端對齊文本中,文本行的左右兩端都放在父元素的內(nèi)邊界上。然后,調(diào)整單詞和字母間的間隔,使各行的長度恰好相等。您也許已經(jīng)注意到了,兩端對齊文本在打印領(lǐng)域很常見。

            需要注意的是,要由用戶代理(而不是 CSS)來確定兩端對齊文本如何拉伸,以填滿父元素左右邊界之間的空間。如需了解詳情,請參閱 CSS text-align 屬性參考頁

            字間隔

            word-spacing 屬性可以改變字(單詞)之間的標(biāo)準(zhǔn)間隔。其默認(rèn)值 normal 與設(shè)置值為 0 是一樣的。

            word-spacing 屬性接受一個正長度值或負(fù)長度值。如果提供一個正長度值,那么字之間的間隔就會增加。為 word-spacing 設(shè)置一個負(fù)值,會把它拉近:

            p.spread {word-spacing: 30px;} p.tight {word-spacing: -0.5em;}  <p class="spread"> This is a paragraph. The spaces between words will be increased. </p>  <p class="tight"> This is a paragraph. The spaces between words will be decreased. </p> 

            實(shí)例 TIY :增加或減少單詞間距(字間隔)

            注釋:如需深入理解 CSS 對“字”(word)的定義,請?jiān)L問 CSS word-spacing 屬性參考頁

            字母間隔

            letter-spacing 屬性與 word-spacing 的區(qū)別在于,字母間隔修改的是字符或字母之間的間隔。

            與 word-spacing 屬性一樣,letter-spacing 屬性的可取值包括所有長度。默認(rèn)關(guān)鍵字是 normal(這與 letter-spacing:0 相同)。輸入的長度值會使字母之間的間隔增加或減少指定的量:

            h1 {letter-spacing: -0.5em} h4 {letter-spacing: 20px}  <h1>This is header 1</h1> <h4>This is header 4</h4> 

            實(shí)例 TIY :規(guī)定字符間距(字母間隔)

            字符轉(zhuǎn)換

            text-transform 屬性處理文本的大小寫。這個屬性有 4 個值:

            • none
            • uppercase
            • lowercase
            • capitalize

            默認(rèn)值 none 對文本不做任何改動,將使用源文檔中的原有大小寫。顧名思義,uppercase 和 lowercase 將文本轉(zhuǎn)換為全大寫和全小寫字符。最后,capitalize 只對每個單詞的首字母大寫。

            作為一個屬性,text-transform 可能無關(guān)緊要,不過如果您突然決定把所有 h1 元素變?yōu)榇髮懀@個屬性就很有用。不必單獨(dú)地修改所有 h1 元素的內(nèi)容,只需使用 text-transform 為你完成這個修改:

            h1 {text-transform: uppercase}

            使用 text-transform 有兩方面的好處。首先,只需寫一個簡單的規(guī)則來完成這個修改,而無需修改 h1 元素本身。其次,如果您以后決定將所有大小寫再切換為原來的大小寫,可以更容易地完成修改。

            實(shí)例 TIY :控制文本中字母的大小寫

            文本裝飾

            接下來,我們討論 text-decoration 屬性,這是一個很有意思的屬性,它提供了很多非常有趣的行為。

            text-decoration 有 5 個值:

            • none
            • underline
            • overline
            • line-through
            • blink

            不出所料,underline 會對元素加下劃線,就像 HTML 中的 U 元素一樣。overline 的作用恰好相反,會在文本的頂端畫一個上劃線。值 line-through 則在文本中間畫一個貫穿線,等價(jià)于 HTML 中的 S 和 strike 元素。blink 會讓文本閃爍,類似于 Netscape 支持的頗招非議的 blink 標(biāo)記。

            none 值會關(guān)閉原本應(yīng)用到一個元素上的所有裝飾。通常,無裝飾的文本是默認(rèn)外觀,但也不總是這樣。例如,鏈接默認(rèn)地會有下劃線。如果您希望去掉超鏈接的下劃線,可以使用以下 CSS 來做到這一點(diǎn):

            a {text-decoration: none;}

            注意:如果顯式地用這樣一個規(guī)則去掉鏈接的下劃線,那么錨與正常文本之間在視覺上的唯一差別就是顏色(至少默認(rèn)是這樣的,不過也不能完全保證其顏色肯定有區(qū)別)。

            還可以在一個規(guī)則中結(jié)合多種裝飾。如果希望所有超鏈接既有下劃線,又有上劃線,則規(guī)則如下:

            a:link a:visited {text-decoration: underline overline;}

            不過要注意的是,如果兩個不同的裝飾都與同一元素匹配,勝出規(guī)則的值會完全取代另一個值。請考慮以下的規(guī)則:

            h2.stricken {text-decoration: line-through;} h2 {text-decoration: underline overline;} 

            對于給定的規(guī)則,所有 class 為 stricken 的 h2 元素都只有一個貫穿線裝飾,而沒有下劃線和上劃線,因?yàn)?em style="font-style: normal; font-weight: bold; ">text-decoration 值會替換而不是累積起來。

            處理空白符

            white-space 屬性會影響到用戶代理對源文檔中的空格、換行和 tab 字符的處理。

            通過使用該屬性,可以影響瀏覽器處理字之間和文本行之間的空白符的方式。從某種程度上講,默認(rèn)的 XHTML 處理已經(jīng)完成了空白符處理:它會把所有空白符合并為一個空格。所以給定以下標(biāo)記,它在 Web 瀏覽器中顯示時,各個字之間只會顯示一個空格,同時忽略元素中的換行:

            <p>This     paragraph has    many     spaces           in it.</p>

            可以用以下聲明顯式地設(shè)置這種默認(rèn)行為:

            p {white-space: normal;}

            上面的規(guī)則告訴瀏覽器按照平常的做法去處理:丟掉多余的空白符。如果給定這個值,換行字符(回車)會轉(zhuǎn)換為空格,一行中多個空格的序列也會轉(zhuǎn)換為一個空格。

            實(shí)例 TIY :white-space: normal

            值 pre

            不過,如果將 white-space 設(shè)置為 pre,受這個屬性影響的元素中,空白符的處理就有所不同,其行為就像 XHTML 的 pre 元素一樣;空白符不會被忽略。

            如果 white-space 屬性的值為 pre,瀏覽器將會注意額外的空格,甚至回車。在這個方面,而且僅在這個方面,任何元素都可以相當(dāng)于一個 pre 元素。

            實(shí)例 TIY :white-space: pre

            注意:經(jīng)測試,IE 7 以及更早版本的瀏覽器不支持該值,因此請使用非 IE 的瀏覽器來查看上面的實(shí)例。

            值 nowrap

            與之相對的值是 nowrap,它會防止元素中的文本換行,除非使用了一個 br 元素。在 CSS 中使用 nowrap 非常類似于 HTML 4 中用 <td nowrap> 將一個表單元格設(shè)置為不能換行,不過 white-space 值可以應(yīng)用到任何元素。

            實(shí)例 TIY :white-space: nowrap

            值 pre-wrap 和 pre-line

            CSS2.1 引入了值 pre-wrap 和 pre-line,這在以前版本的 CSS 中是沒有的。這些值的作用是允許創(chuàng)作人員更好地控制空白符處理。

            如果元素的 white-space 設(shè)置為 pre-wrap,那么該元素中的文本會保留空白符序列,但是文本行會正常地?fù)Q行。如果設(shè)置為這個值,源文本中的行分隔符以及生成的行分隔符也會保留。pre-line 與 pre-wrap 相反,會像正常文本中一樣合并空白符序列,但保留換行符。

            實(shí)例 TIY :white-space: pre-wrap

            實(shí)例 TIY :white-space: pre-line

            注意:我們在 IE7 和 FireFox2.0 瀏覽器中測試了上面的兩個實(shí)例,但是結(jié)果是,值 pre-wrap 和 pre-line 都沒有得到很好的支持。

            總結(jié)

            下面的表格總結(jié)了 white-space 屬性的行為:

            空白符換行符自動換行
            pre-line合并保留允許
            normal合并忽略允許
            nowrap合并忽略不允許
            pre保留保留不允許
            pre-wrap保留保留允許

            文本方向

            如果您閱讀的是英文書籍,就會從左到右、從上到下地閱讀,這就是英文的流方向。不過,并不是所有語言都如此。我們知道古漢語就是從右到左來閱讀的,當(dāng)然還包括希伯來語和阿拉伯語等等。CSS2 引入了一個屬性來描述其方向性。

            direction 屬性影響塊級元素中文本的書寫方向、表中列布局的方向、內(nèi)容水平填充其元素框的方向、以及兩端對齊元素中最后一行的為止。

            注釋:對于行內(nèi)元素,只有當(dāng) unicode-bidi 屬性設(shè)置為 embed 或 bidi-override 時才會應(yīng)用 direction 屬性。

            direction 屬性有兩個值:ltr 和 rtl。大多數(shù)情況下,默認(rèn)值是 ltr,顯示從左到右的文本。如果顯示從右到左的文本,應(yīng)使用值 rtl。

            CSS 文本實(shí)例:

            設(shè)置文本顏色
            本例演示如何設(shè)置文本的顏色。
            設(shè)置文本的背景顏色
            本例顏色如何設(shè)置部分文本的背景顏色。
            規(guī)定字符間距
            本例演示如何增加或減少字符間距。
            使用百分比設(shè)置行間距
            本例演示如何使用百分比值來設(shè)置段落中的行間距。
            使用像素值設(shè)置行間距
            本例演示如何使用像素值來設(shè)置段落中的行間距。
            使用數(shù)值來設(shè)置行間距
            本例演示如何使用一個數(shù)值來設(shè)置段落中的行間距。
            對齊文本
            本例演示如何對齊文本。
            修飾文本
            本例演示如何向文本添加修飾。
            縮進(jìn)文本
            本例演示如何縮進(jìn)文本首行。
            控制文本中的字母
            本例演示如何控制文本中的字母。
            在元素中禁止文本折行
            本例演示如何禁止在元素中的文本折行。
            增加單詞間距
            本例演示如何增加段落中單詞間的距離。

            CSS 文本屬性

            屬性描述
            color設(shè)置文本顏色
            direction設(shè)置文本方向。
            line-height設(shè)置行高。
            letter-spacing設(shè)置字符間距。
            text-align對齊元素中的文本。
            text-decoration向文本添加修飾。
            text-indent縮進(jìn)元素中文本的首行。
            text-shadow設(shè)置文本陰影。CSS2 包含該屬性,但是 CSS2.1 沒有保留該屬性。
            text-transform控制元素中的字母。
            unicode-bidi設(shè)置文本方向。
            white-space設(shè)置元素中空白的處理方式。
            word-spacing設(shè)置字間距。
            91精品婷婷国产综合久久| 久久精品夜色噜噜亚洲A∨| 久久婷婷五月综合97色直播 | 久久久久久久尹人综合网亚洲| 天天影视色香欲综合久久| 国产日韩久久久精品影院首页| 国产99精品久久| MM131亚洲国产美女久久| 久久久噜噜噜www成人网| 97精品依人久久久大香线蕉97 | 色综合久久天天综线观看| 久久久久黑人强伦姧人妻| 久久久久99精品成人片三人毛片 | 久久青青草原亚洲av无码app| 久久人妻少妇嫩草AV无码专区| 久久久精品人妻一区二区三区四| AAA级久久久精品无码片| 久久久九九有精品国产| 66精品综合久久久久久久| 精品久久人人妻人人做精品| 久久精品成人免费观看97| 2019久久久高清456| 日日躁夜夜躁狠狠久久AV| 久久久久久综合一区中文字幕 | 大香伊人久久精品一区二区 | 亚洲国产精久久久久久久| 久久久精品久久久久特色影视| 亚洲综合久久夜AV | 日韩av无码久久精品免费| 久久精品国产福利国产秒| 久久国产视屏| 精品久久久中文字幕人妻| 国产产无码乱码精品久久鸭| 精品国产热久久久福利| 久久人做人爽一区二区三区| 精品午夜久久福利大片| 欧美粉嫩小泬久久久久久久| 99久久国产热无码精品免费| 久久久久久久久久免免费精品| 日韩久久久久久中文人妻| 国产免费久久精品99久久|