>印刷書籍是一種靜態格式。從設計師的最初佈局到新聞床,倉庫,書架和您的手之旅,該書的輸出不會改變。它完全按照設計師的構思。
涉及網絡時,根據許多因素,例如各種設備,屏幕分辨率,個性化的瀏覽器設置等,相同的網站可能會大不相同。解釋…
>…可能會給我們一個印象,即類型太小,其他人可能會導致我們在屏幕外錯過一些重要的東西,而其他人則幾乎完全不可能查看該網頁。
>也就是說,“網絡是文字的最佳場所。”,正如蒂姆·布朗(Tim Brown)在關於通用版式的演講中所說的那樣。可以“搜索,複製,翻譯,鏈接到其他文檔,可以打印,很方便,可以訪問”。
>網絡的靈活性並不意味著放棄控制。相反,作為網頁設計師,我們仍然可以對我們投入工作的任何內容做出明智的選擇,而文字也不例外。文本元素的佈局方式,它們的顏色,大小,字體,所有這些以及更多傳達網站的核心信息和品牌。
要操縱網絡上的文本外觀,我們選擇的主要工具是CSS。 我將要在這篇文章中介紹的CSS屬性可以在CSS文本模塊規範中找到。
這個模塊描述了CSS的排版控件;也就是說,
控制源文本翻譯為>的CSS的功能 格式化的,包裹的文本。構成基本文本或單詞的基本單元,以及允許在給定文本中打破一個單詞的位置,這在很大程度上取決於網站中使用的語言規則。因此,重要的是在HTML文檔中聲明此信息(通常在元素的lang屬性中)。>
換句話說,CSS文本模塊使用css。
>在這裡,我不會討論以下兩個主題:
>字體,即字符的視覺表示,即字形及其屬性; 與文本裝飾有關的CSS的功能,例如下文,文本陰影和重點標記。
如果您很好奇,您會在CSS字體模塊3級和CSS文本裝飾模塊3級中找到有關字體和文本裝飾屬性的最新文檔。
>如果您希望每個單詞的首字母在大寫中顯示在所有其他字母的外觀(在HTML文檔中的情況下如何),則使用該值資本化將實現這一目標:
CSS:
請注意,大寫如何不遵循標題案例約定:實際上,上面示例中的所有第一個字母都出現了大寫,包括“ in”一詞。打算遵循有關標題的文學慣例的作者將需要在源文本中手動操縱字母。
如果您的目標是在大寫中顯示所有字母,則無論他們在HTML文檔中的情況如何
html:
<span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>CSS:
<span>h2 { </span> <span>text-transform: capitalize; </span><span>}</span>
html:
CSS:
<span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>
<span>h2 { </span> <span>text-transform: uppercase; </span><span>}</span>全寬度值
html:
CSS:
<span><span><span><h2</span>></span>Alice's Adventures in Wonderland<span><span></h2</span>></span></span>當應用全寬時,Firefox中的角色是什麼樣子:
進一步說明
這就是Firefox中的外觀:
請注意連字符後的第一個字母如何被大寫。另一方面,下面的文本與Chrome中顯示的文本相同:
查看文本轉換屬性值的演示。
按下選項卡鍵,空格鍵或強迫某些文本折斷下一行(使用> enter鍵或
tag),您可以在源中創建空白空間文檔。
默認情況下,瀏覽器的空間崩潰序列倒入一個空間,刪除了線路斷裂,並且文本包裝線條以適合其容器。這對我們來說很方便,因為它允許我們縮進和單獨的文本塊,以使我們的源文檔可讀和可維護,而不會影響瀏覽器中的內容的顯示方式。
> 但是,如果這不是您的目標,該怎麼辦?例如,您想保留在HTML文檔中創建的空白空間。一個常見的情況是,當您編寫一些文本時,該文本旨在顯示為正確的縮進代碼段。或者,您希望將一些文本顯示在一行中,而不會破裂。 在這種情況下,當您打算覆蓋瀏覽器的默認行為時,White Space屬性提供了一些有趣的選項。正常關鍵字將瀏覽器重置為默認行為:所有額外的空白空間都折疊成一個字符,並在到達容器邊緣時包裹著線條。
>
pre值> PRE關鍵字允許您通過保留源文檔中存在的所有白色空間和強制新線條來顯示文本。在溢出容器時,文本不會包裹成新線路。
<span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>
如果使用選項卡來創建空白,則可以通過將其設置為整數值來控制其大小。
tab-size是一個具有不一致的瀏覽器支持的屬性,但是如果您確實無法忍受默認選項卡的字符長度,則這裡有一個覆蓋所有基礎的polyfill。
pre-wrap值<span>h2 { </span> <span>text-transform: capitalize; </span><span>}</span>
>假設您希望源文檔中的白色空間保存在瀏覽器顯示器中。但是,您還想讓線條包裹在其到達容器邊緣時。
>預包上的關鍵字將幫助您獲得所需的結果。>
<span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>
但是,
縮小瀏覽器屏幕,您會注意到包裹的線條以適合其容器。
>對於白空間屬性的最終有趣值是預上線。在一定程度上,它將空間序列倒入一個空間並允許包裹,它的行為就像正常。但是,如果HTML文檔中存在新的線字符或
標籤,則將其保存在瀏覽器顯示中。
<span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>
nowrap value
上面的
是鏈接,後跟»符號。將此字符落到下一行,例如在流體網絡佈局中,這是不可取的。
在這種情況和類似情況下(例如,想想圖標),NowRap值非常方便。
>> Sara Soueidan在CODROPS CSS參考中帶給我們另一個有趣的用例。薩拉指出,白色空間屬性可以應用於任何內聯內容,包括圖像。 >
>通過防止圖像包裝並強迫它們在其容器內的一條線上顯示在可滾動元素中的圖像的水平列表中,它有時與值nowrap一起使用。
>我通過使用白色空間:nowrap創建基本的jQuery旋轉木製來放大了這一建議。這是演示:
>請參閱codepen上的sitepoint(@sitepoint)上的圖像旋轉曲線上的文字包裝屬性。有時,控制單詞內部的線路斷裂
有時會出現設計外觀,因為一個長詞無法將其包裹在下一行,從而溢出了其容器。博客評論中的長URL或一些用戶生成的長詞是常見的情況。
>以下CSS屬性旨在為我們在網絡上處理長單詞的控制量。> wrap/Overflow-wrap屬性
>
通過使用正常值,單詞在允許的斷點,例如,空格,連字符等。break-word值允許單詞內的任意突破點,如果該行在某些其他可接受的點上不能折斷。
下面的圖片顯示了一個溢出其容器的長詞的顯示:
>讓我們設置Overflow-wrap屬性,以及為遺產目的,詞包屬性屬性,將其設置為brake-word值:
…現在,長詞的顯示已分為多行以適合可用空間。
<span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>
連字符屬性
<span>h2 { </span> <span>text-transform: capitalize; </span><span>}</span>>您還可以防止顯示連字符。在這種情況下,將連字符的屬性設置為無:
<span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>>此外,如果單詞在標記中和文本包裹在下一行中,則可以在單詞中的線斷裂上顯示連字符字符。這是用手冊的值來完成的:
<span>h2 { </span> <span>text-transform: uppercase; </span><span>}</span>
在供應商前綴的幫助下,瀏覽器對連字符屬性的支持在所有主要瀏覽器上都很好,儘管並非沒有一些略有不一致。 Chrome(v.44)和Opera(V.30)的最新版本在寫作時不支持屬性值自動。
操縱單詞和字母之間的空間
,帶來了巨大的改進。
> CSS提供單詞間距和字母間隔屬性,以控制單詞和字母之間的間距的外觀。
>正常顯示字母之間的默認空間。空間的量取決於所使用的字體或瀏覽器。
><span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>除了字體或瀏覽器定義的默認間距外,
<span>h2 { </span> <span>text-transform: capitalize; </span><span>}</span>
>百分比的工作方式與
<span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>
>您可以將字母間隔屬性設置為兩個值之一:normal或
使用普通葉在字母之間的默認字體間距。它還重置先前指定為其默認值的任何字母間隔長度。例如,如果您在父元素上指定了1em的字母間隔值,但希望在子元素上顯示默認值,則正常是您的朋友。
<span>h2 { </span> <span>text-transform: uppercase; </span><span>}</span>
<span><span><span><h2</span>></span>Alice's Adventures in Wonderland<span><span></h2</span>></span></span>
>
>另外,您也可以對單詞間隔和字母間隔進行動畫。但是,在字母間距上使用CSS過渡表明,當前版本的Firefox(V.39)未識別正常值。為了克服這一點,只需用0em替換正常。這是一個使用單詞間隔和字母間隔的演示,其中包含動畫文本:
>請參閱codepen上的sitepoint(@sitepoint)的CSS字母間隔和單詞間隔屬性的筆
最新的CSS文本對齊選項>文本 - 空地屬性已經存在了一段時間。它控制在塊容器中如何對齊文本和圖像等內聯內容。 kewings左右與左右與右側的內聯內容對齊。將文本對准設置為中心將內容對齊到其容器的中心。最後,合理的關鍵字為內容合理,使每行的長度相同(除了最後一行,如果它不足以達到其容器的邊緣)。
<span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>
<span>h2 { </span> <span>text-transform: capitalize; </span><span>}</span>
應用文本校友:與內聯元素的匹配父母確保孩子繼承與父母相同的對準。繼承的開始或結束值是根據父語言方向計算的,導致左或向右輸出。
CSS的新
也是文本偏見的屬性。此屬性控制段落結束前或查看一個Codepen演示,顯示這些功能 縮進文本
縮進一行文本,通常是段落中的第一行,您經常在網站上經常遇到。取而代之的是,將一個空線作為段落之間的分離的常見視覺標記。有時會使用段落的第一行來創建適合特定設計的經典外觀。
通常使用PX或EM單元設置長度的值:
使用百分比值設置一個百分比:
每條線的值在塊容器內以及強制折疊後的每條線內的外觀,即,即通過擊中
鍵或在HTML源中插入
標籤。但是,柔軟的包裹斷裂後的第一行的顯示,即,將其包裹到下一行以適合其容器的文本不受影響。
懸掛的值導致所有線路以外的第一行顯示為縮進。
<span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>>每個線和懸掛值都是實驗值,在編寫時尚未在任何瀏覽器中實現。
查看此演示以查看“動作”中的文本
> CSS在網絡文本操縱方面一直在取得巨大進展,儘管期望做更多。除了對一些最新屬性的粗略瀏覽器支持外,例如,如果CSS提供了Kerning功能,即有機會在給定單詞中操縱兩個字母之間的距離。 在這篇文章中,我深入研究了許多CSS屬性,這些屬性控制了網絡上文本的格式格式,線條包裝和對齊。可以隨意使用演示進行實驗。
我期待您的反饋!
>>經常詢問有關CSS屬性的問題(常見問題解答)
>如何使用CSS屬性來控制Web版本?您可以調整字體尺寸,字體家族,線高,文本對齊,文本顏色等等。例如,要更改字體大小,您可以使用“字體大小”屬性並指定像素,EMS或百分比中的大小。同樣,要更改字體系列,您可以使用“字體家庭”屬性並指定字體名稱。請記住要包含後備字體,以防萬一首選在用戶的系統上不可用。 >'text-align'屬性在css?如何使CSS中左側的列表項目對齊?
我如何在CSS中迭代文本? CSS中的屬性用於斜體文本。您可以將其價值設置為“斜體”,以使文本斜體。例如,“字體風格:斜體”會斜體化文本。
以上是CSS屬性控製網絡版式的詳細內容。更多資訊請關注PHP中文網其他相關文章!