摘要:使用了值及其以下的所有列表項的數(shù)字標(biāo)記將會按照值重新計數(shù)。嵌套列表的一個目的是便于識別列表的起始位置以及每個列表和列表項。嵌套列表完成后,閉合包裹的列表項并繼續(xù)在原列表項中操作。從正方形和十進制數(shù)一直到亞美尼亞編號都屬可用值范圍。
列表清單是我們?nèi)粘I畹囊徊糠帧N崔k事項清單確認(rèn)我們接下來要做什么,行車導(dǎo)航提供路線列表,食譜提供成分列表和說明列表。幾乎所有的東西都有列表,這就很容易理解為什么它們在網(wǎng)上這么受歡迎。
若我們想在網(wǎng)站上創(chuàng)建列表,HTML提供了三種類型的列表:
無序列表、有序列表和描述列表。選擇哪種列表——或者是否使用列表——歸結(jié)于要顯示的內(nèi)容以及語義上最符合當(dāng)前內(nèi)容的標(biāo)簽選項。
除了HTML中提供了三種不同的列表,我們還可以在CSS中用多種方法實現(xiàn)這些列表。例如我們可以選擇在列表中使用哪種列表項標(biāo)記。這個標(biāo)記可以是方形、圓形、數(shù)字、字母或者將它隱藏。另外,我們還可以設(shè)置列表是縱向展示或橫向展示。所有這些選擇在頁面渲染中都扮演著重要的角色。
無序列表無序列表就是一個內(nèi)容相關(guān)但順序無關(guān)緊要的列表。用HTML創(chuàng)建無序列表,使用無序列表塊狀元素,無序列表中的每一項都多帶帶使用列表項元素標(biāo)記。
默認(rèn)情況下,大部分的瀏覽器都會為元素添加縱向的margin和左邊的padding,為元素設(shè)置一個前置的圓點標(biāo)記。這些標(biāo)記被稱為列表項標(biāo)記,它可以用CSS修改。
有序列表元素與無序列表使用方式相同,列表項元素的創(chuàng)建也相同。它們的主要不同在于,對于有序列表來說,呈現(xiàn)列表項的順序非常重要。
因為是有序的,所以列表項標(biāo)記默認(rèn)為數(shù)字,為非圓點。
start 屬性
- Head north on N Halsted St
- Turn right on W Diversey Pkwy
- Turn left on N Orchard St
start屬性定義列表項標(biāo)記的數(shù)字從哪個值開始。默認(rèn)情況下數(shù)字從1開始。但有可能列表需要從30或其他值開始。在元素上使用start屬性就可以定義有序列表開始計數(shù)的值。
start屬性只接受整數(shù)值,即便有序列表可以使用不同類型的數(shù)字編號,例如羅馬數(shù)字。
reversed 屬性
- Head north on N Halsted St
- Turn right on W Diversey Pkwy
- Turn left on N Orchard St
當(dāng)我們在元素上使用reversed屬性,表示列表倒序顯示。若一個有序列表有五個列表項1到5,將會按倒序5到1顯示。
reversed屬性是一個布爾值(true或者false),除此之外它不接受任何其他值。false為默認(rèn)值;當(dāng)值為true時,元素的列表項將會按倒序顯示。
value屬性
- Head north on N Halsted St
- Turn right on W Diversey Pkwy
- Turn left on N Orchard St
value屬性可以使用在有序列表的元素上,用以修改列表的標(biāo)記值。使用了value值及其以下的所有列表項的數(shù)字標(biāo)記將會按照value值重新計數(shù)。
例如,我們在第二個列表項添加value值為9,那么這個列表項標(biāo)記的數(shù)字顯示為9, 同時所有隨后的列表項標(biāo)記都會從9以后開始計數(shù)。
描述列表
- Head north on N Halsted St
- Turn right on W Diversey Pkwy
- Turn left on N Orchard St
線上還有一種描述列表(但它沒有像無序列表和有序列表那么常見)。 描述列表常用于列出多個術(shù)語和描述,例如術(shù)語表。
HTML創(chuàng)建描述列表使用描述列表元素。描述列表不再需要元素標(biāo)記列表項,而是用另外兩個塊狀元素代替:列表項術(shù)語元素和描述元素。
描述列表可能包含了多個一對一的術(shù)語和描述。除此之外,也可能是多個術(shù)語對應(yīng)一個描述或者多個描述對應(yīng)一個術(shù)語。一個術(shù)語可能有多種含義和解釋。相對的,一個描述也可能適用于多個術(shù)語。
當(dāng)我們添加描述時,需要注意元素需要定義在元素之前。定義的術(shù)語和描述需彼此對應(yīng);所以這些元素的順序非常重要。
默認(rèn)情況下,元素與
和
元素一樣,帶有縱向外邊距。此外,元素也有一個默認(rèn)的左外邊距。
使列表極為強大的一個特性是它們嵌套的能力。每個列表都可以嵌套在另一個列表里;它們可以連續(xù)地嵌套。但這種無限嵌套的功能并不合適隨意使用。列表還是需要應(yīng)用在最適合它們語義的地方。
嵌套列表的一個目的是便于識別列表的起始位置以及每個列表和列表項。拿無序列表和有序列表來說,嵌套列表時,元素和
元素的直接子元素是元素。再重復(fù)一遍,
元素和
元素的直接子元素只能是元素。
也就是說,在元素內(nèi)可以添加任何標(biāo)準(zhǔn)的元素標(biāo)簽,包括或
元素。
若要在列表項中嵌套一個列表,需要新建列表。嵌套列表完成后,閉合包裹的列表項并繼續(xù)在原列表項中操作。
- Walk the dog
- Fold laundry
- Go to the grocery and buy:
- Milk
- Bread
- Cheese
- Mow the lawn
- Make dinner
因為嵌套列表有點復(fù)雜——如果寫錯樣式會錯亂—— 我們來快速回顧一下。和
元素只能包含元素。元素可以包含任何普通的元素;但元素本身只能是
或
元素的子元素。
值得注意的是,嵌套列表的項標(biāo)記會根據(jù)嵌套的深度改變。在上面的例子中,無序列表在有序列表內(nèi)以空心圓而非實心圓作為項標(biāo)記。這是因為無序列表是有序列表的一級嵌套列表。
幸運的是,我們可以控制任何級別的列表項標(biāo)記,下面我們來看看。
列表樣式無序和有序列表都有默認(rèn)的項標(biāo)記,無序列表通常是實心圓,而有序列表是數(shù)字。項標(biāo)記的樣式和定位都可以通過CSS來調(diào)整。
list-style-type屬性list-style-type屬性用于設(shè)置項標(biāo)記的內(nèi)容。從正方形和十進制數(shù)一直到亞美尼亞編號都屬可用值范圍。這個樣式可以寫在、
或者元素上
任何list-style-type屬性值都可以添加到無序或者有序列表中。這一功能,可以在無序列表中使用數(shù)列項標(biāo)記,在有序列表使用非數(shù)字項標(biāo)記。
HTML
CSS
ul { list-style-type: square; }list-style-type屬性值
前面提到了list-style-type屬性有一些不同的值。這里羅列出了這些值及其意義。
list-style-type值 | 備注 |
---|---|
none | 無標(biāo)記 |
disc | 實心圓 |
circle | 空心圓 |
square | 實心正方形 |
decimal | 十進制數(shù) |
decimal-leading-zero | 初始值為0的十進制數(shù) |
lower-roman | 小寫羅馬數(shù)字 |
upper-roman | 大寫羅馬數(shù)字 |
lower-greek | 小寫古希臘語 |
lower-alpha / lower-latin | 小寫ASCII字母 |
upper-alpha / upper-latin | 大寫ASCII字母 |
armenian | 亞美尼亞語 |
georgian | 傳統(tǒng)格魯吉亞編號 |
我們總會碰到list-style-type屬性值不夠使用的時候,這時候我們就希望能夠自定義項標(biāo)記。達到此目的最常用方法是為元素設(shè)置背景圖。
移除默認(rèn)的list-style-type屬性值,然后在元素設(shè)置背景圖和內(nèi)邊距。
詳細(xì)一點來說,就是將list-style-type屬性值設(shè)為none就可以移除項標(biāo)記。使用background屬性定義一張背景圖,如有必要還可以為其設(shè)置定位和重復(fù)屬性。接下來設(shè)置一個左內(nèi)邊距為背景圖留出足夠空間。代碼如下所示:
HTML
CSS
li { background: url("arrow.png") 0 50% no-repeat; list-style-type: none; padding-left: 12px; }list-style-position屬性
默認(rèn)情況下項標(biāo)記位于元素左側(cè),此時list-style-position屬性的值為outside,表示元素所有內(nèi)容都顯示在項標(biāo)記右側(cè)。使用list-style-position屬性可以將默認(rèn)值outside改為inside或inherit。
屬性值outside表示項標(biāo)記位于元素左側(cè),并且不允許元素內(nèi)容在項標(biāo)記下環(huán)繞顯示。屬性值inside(非常少見)使項標(biāo)記顯示在元素第一行,并且允許其他內(nèi)容在項標(biāo)記下環(huán)繞顯示。
HTML
CSS
ul { list-style-position: inside; }簡寫列表樣式屬性
我們之前介紹的列表樣式屬性list-style-type和list-style-position可以簡寫成一個屬性值list-style。使用list-style屬性可以一次性設(shè)置一個或多個列表樣式屬性。簡寫值的順序為先設(shè)置list-style-type,后設(shè)置list-style-position
ul { list-style: circle inside; } ol { list-style: lower-roman; }橫向列表
偶爾我們也想要展示橫向列表。也許我們想將列表分成多列,來構(gòu)建一個導(dǎo)航列表,或者將一些列表項放在一行中。基于內(nèi)容和所需布局,有幾種不同的方法可以將列表設(shè)置為單行顯示,例如將元素的display屬性設(shè)置為inline或inline-block,或者為元素設(shè)置浮動。
display屬性將列表設(shè)置為單行顯示最便捷快速的方法就是把的display屬性設(shè)置為inline或inline-block。設(shè)置后所有元素會間隔一個空格,單行排列顯示。
如果不需要每個元素間的空格,可以根據(jù)第五課 定位 所學(xué),移除元素間的空格。
多半我們都會用inline-block而非inline屬性值。inline-block屬性值允許我們簡單快速地為元素添加縱向外邊距和元素間的距離,這些是inline屬性值不能做到的。
當(dāng)我們將display屬性值改為inline或inline-block,列表項標(biāo)記,如圓點、數(shù)字或者其他的樣式都會被移除。
HTML
CSS
li { display: inline-block; margin: 0 10px; }
float屬性
修改display屬性值為inline或inline-block確實很簡單快捷;但是這種方法移除了列表項標(biāo)記。如果列表項標(biāo)記是必須的,那么為元素設(shè)置浮動比修改display屬性更合適。
將元素的float屬性設(shè)置為left,所有元素都會水平無間隙的排列顯示。當(dāng)我們?yōu)?b>
HTML
CSS
li { float: left; margin: 0 20px; }
為任何元素設(shè)置浮動,都破壞了頁面的流布局。所以我們必須要記得清除浮動——最常用的是clearfix方法——使頁面回到正常的流布局中。
導(dǎo)航列表示例我們常用無序列表開發(fā)導(dǎo)航菜單欄。這些菜單欄通常使用以上提到的兩種方法實現(xiàn)水平布局。下面是一個將display屬性設(shè)置為inline-block的無序列表實現(xiàn)的水平菜單欄示例。
HTML
CSS
.navigation ul { font: bold 11px "Helvetica Neue", Helvetica, Arial, sans-serif; margin: 0; padding: 0; text-transform: uppercase; } .navigation li { display: inline-block; } .navigation a { background: #395870; background: linear-gradient(#49708f, #293f50); border-right: 1px solid rgba(0, 0, 0, .3); color: #fff; padding: 12px 20px; text-decoration: none; } .navigation a:hover { background: #314b60; box-shadow: inset 0 0 10px 1px rgba(0, 0, 0, .3); } .navigation li:first-child a { border-radius: 4px 0 0 4px; } .navigation li:last-child a { border-right: 0; border-radius: 0 4px 4px 0; }練習(xí)
現(xiàn)在我們知道了如何使用HTML和CSS創(chuàng)建列表,我們回到樣式討論會網(wǎng)站,看看如何使用列表。
目前我們頁面中所有
使用無序列表(元素)和列表項(元素)優(yōu)化我們菜單欄的結(jié)構(gòu)后,這些新的元素會使菜單欄縱向排列。
為了使元素水平排列,我們將元素的display屬性值改為inline-block,但完成后元素間會留有間隙。回想第五課 定位 的內(nèi)容,我們知道可以通過在元素的開始標(biāo)簽和結(jié)束標(biāo)簽之間添加注釋來消除空格。
完成后,
同理,元素中的菜單欄修改后代碼如下所示:
別忘了在所有HTML文件中修改這部分代碼
寫好無序列表后,我們需要清除列表項的一些樣式,并將其設(shè)置為水平布局。 我們可以使用class nav來幫我們完成。
我們將所有class為nav的元素內(nèi)的元素的display屬性設(shè)置為inline-block,設(shè)置一些外邊距margin,并將垂直屬性vertical-align設(shè)置為上對齊top。
除此之外,我們使用偽類選擇器:last-child將最后一個元素的右外邊距margin設(shè)為0。這是為了確保元素與父元素間的水平間隙都被移除。
我們在main.css文件的導(dǎo)航樣式下,添加我們需要的樣式:
.nav li { display: inline-block; margin: 0 10px; vertical-align: top; } .nav li:last-child { margin-right: 0; }
你也許很疑惑為什么無序列表沒有項標(biāo)記或別的默認(rèn)樣式。這是因為這些樣式都在我們的樣式表中被重置了。如果去查看下重置的樣式,就會發(fā)現(xiàn),
,和元素都設(shè)置了margin和padding為0。
和
元素還設(shè)置了list-style為none
我們的菜單欄不是唯一使用列表的地方,我們也將其應(yīng)用到別的頁面中,例如Speakers頁面。 下面讓我們來給討論會添加演講者信息。
在speakers.html文件的引導(dǎo)區(qū)塊下,添加一個新的區(qū)塊用來展示我們的演講者信息。我們可以復(fù)用一些現(xiàn)有的樣式,使用class屬性值為row的元素包裹演講者信息,可以直接應(yīng)用到白色背景和內(nèi)邊距。在元素中添加class屬性為grid的 到此為止,添加的HTML如下所示: 在 我們可以使用現(xiàn)有的class col-2-3和col-1-3來設(shè)置,完成后代碼如下所示: 這里有一些需要注意的點。首先,每個演講者的元素都有獨立的id屬性,并用演講者的名字作為屬性值。當(dāng)我們?yōu)橛懻摃?chuàng)建日程表,這個id就會被當(dāng)作錨點鏈接到演講者信息。 另外, 在占有2/3空間的 以上內(nèi)容的代碼如下所示: By setting constraints, we force ourselves... As a designer and front-end developer, Shay... 在占有1/3空間的元素中,我們將添加一個class為speaker-info的 在設(shè)置樣式之前,我們先在這個 目前為止,這部分的HTML代碼如下所示: By setting constraints, we force ourselves... As a designer and front-end developer, Shay... class為speaker-info的 首先我們在main.css文件中分出一個新的Speakers區(qū)塊用來添加speakers頁面的樣式。再來我們?yōu)閷傩灾禐?b>speaker-info的class添加1px的灰色實線外邊框和5px的圓角。 接下來,我們添加屬性margin-top值為88px,使元素定位在與演講描述第一段相同的垂直線上,再添加縱向padding為22px給嵌套的無序列表提供空間 最后將此元素內(nèi)的的文本設(shè)置為居中 CSS 完成后代碼如下所示: 讓我們花一分鐘時間回顧下為什么我們要在這里使用 我們在class為col-1-3的元素中添加 隨著演講者越來越多,我們需要確認(rèn)它們之間的縱向間距相等。為此我們創(chuàng)建了一個class speaker,并為其添加下外邊距margin-bottom為44px,如下所示: 我們將這個class添加在每個演講者的元素上,除卻最后一個。我們在最后一個演講者元素上省略它是因為我們不希望在元素前生成不必要的邊距。多個演講者的布局如下所示: 此處留意下,第一個演講者 Chris Mills 的元素添加了class屬性值speaker生成了縱向邊距,使之與作者 Shay Howe 的元素分開。而最后一個演講者的元素,還是作者 Shay Howe 的,并沒有添加class屬性值speaker,使之與元素之間保持了合適的距離。 到此我們的導(dǎo)航菜單已經(jīng)完成,演講者speakers頁面也已成形。 這是練習(xí)的源代碼。在線預(yù)覽 或 點擊下載 列表元素在HTML中使用相當(dāng)普遍,常用在不是很起眼的地方。使用它們的關(guān)鍵是盡可能語義化地使用它們并放在最合適的位置。 我們來總結(jié)一下這節(jié)課所學(xué): 如何創(chuàng)建無序列表,有序列表和描述列表。 如何正確的在列表中嵌套其他列表 如何改變列表項標(biāo)記的樣式和位置 如何使用背景圖代替列表項標(biāo)記 如何水平顯示或浮動列表 現(xiàn)在我們學(xué)會了如何在頁面中添加列表,接下來我們將學(xué)習(xí)如果在頁面中添加媒體,下節(jié)課我們將深入學(xué)習(xí)可嵌入媒體,如圖片、音頻和視頻。 https://learn.shayhowe.com/ht... 文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。 轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/53213.html 摘要:使用了值及其以下的所有列表項的數(shù)字標(biāo)記將會按照值重新計數(shù)。嵌套列表的一個目的是便于識別列表的起始位置以及每個列表和列表項。嵌套列表完成后,閉合包裹的列表項并繼續(xù)在原列表項中操作。從正方形和十進制數(shù)一直到亞美尼亞編號都屬可用值范圍。
列表清單是我們?nèi)粘I畹囊徊糠帧N崔k事項清單確認(rèn)我們接下來要做什么,行車導(dǎo)航提供路線列表,食譜提供成分列表和說明列表。幾乎所有的東西都有列表,這就很容易理解... 摘要:本文轉(zhuǎn)載自眾成翻譯譯者文藺鏈接原文今年的頂級舉措之一是為我們的用戶提供一個更好的瀏覽體驗。這意味著保持最少的。這些組件有全局的,網(wǎng)站速度信標(biāo)現(xiàn)場速度信標(biāo)套件,試驗的庫文件,以及統(tǒng)計模塊等。它們在發(fā)布前要經(jīng)歷嚴(yán)格的回歸測試,這就會增加延時。
本文轉(zhuǎn)載自:眾成翻譯譯者:文藺鏈接:http://www.zcfy.cc/article/912原文:http://www.ebaytechblog... 摘要:小書最后頁面會顯示內(nèi)容組件可以和組件組合在一起,組件內(nèi)部可以使用別的組件。當(dāng)頁面結(jié)構(gòu)復(fù)雜起來,有許多不同的組件嵌套組合的話,組件樹會相當(dāng)?shù)膹?fù)雜和龐大。下一節(jié)中我們將介紹小書事件監(jiān)聽。
React.js 小書 Lesson8 - 組件的組合、嵌套和組件樹
本文作者:胡子大哈本文原文:http://huziketang.com/books/react/lesson8
轉(zhuǎn)載請注明出處,保留... 摘要:元素是使用小于號和大于號包裹元素名來標(biāo)示。一個結(jié)束標(biāo)簽表示元素的結(jié)束它由小于號元素名組成例如。和嵌套在內(nèi),它們頁面中都是可視的。使用選擇器類型選擇器類型選擇器也叫作元素選擇器根據(jù)元素類型選擇元素。
可以的話,請想象一下互聯(lián)網(wǎng)沒有發(fā)明之前的日子。網(wǎng)站還不存在,紙質(zhì)的書本是我們主要的信息來源,而在書本中查詢我們想要的資料會耗費相當(dāng)多的精力和時間。 而如今,你打開個瀏覽器用搜索引擎搜索,任... 摘要:元素是使用小于號和大于號包裹元素名來標(biāo)示。一個結(jié)束標(biāo)簽表示元素的結(jié)束它由小于號元素名組成例如。和嵌套在內(nèi),它們頁面中都是可視的。使用選擇器類型選擇器類型選擇器也叫作元素選擇器根據(jù)元素類型選擇元素。
可以的話,請想象一下互聯(lián)網(wǎng)沒有發(fā)明之前的日子。網(wǎng)站還不存在,紙質(zhì)的書本是我們主要的信息來源,而在書本中查詢我們想要的資料會耗費相當(dāng)多的精力和時間。 而如今,你打開個瀏覽器用搜索引擎搜索,任... 閱讀 2625·2021-11-18 10:02 閱讀 2285·2021-09-30 09:47 閱讀 1782·2021-09-27 14:01 閱讀 3114·2021-08-16 11:00 閱讀 3168·2019-08-30 11:06 閱讀 2399·2019-08-29 17:29 閱讀 1539·2019-08-29 13:19 閱讀 451·2019-08-26 13:54Shay Howe
Less Is More: How Constraints Cultivate Growth
About Shay
Shay Howe
Less Is More: How Constraints Cultivate Growth
About Shay
/*
========================================
Speakers
========================================
*/
.speaker-info {
border: 1px solid #dfe2e5;
border-radius: 5px;
margin-top: 88px;
padding: 22px 0;
text-align: center;
}
元素上。
.speaker {
margin-bottom: 44px;
}
相關(guān)文章
[譯]HTML&CSS Lesson8: 列表
【譯】 eBay 的速度與風(fēng)范
React.js 小書 Lesson8 - 組件的組合、嵌套和組件樹
[譯]HTML&CSS Lesson1: 構(gòu)建第一張頁面
[譯]HTML&CSS Lesson1: 構(gòu)建第一張頁面
發(fā)表評論
0條評論
pkhope
男|高級講師
TA的文章
閱讀更多
(超簡單)ESP8266深度睡眠模式下遠(yuǎn)程采集溫濕度信息
軟件測試工程師一分鐘自我介紹?
解決Win10家庭版無法看到和啟動Hyper-V自帶虛擬機的方法
RAKsmart:爆款產(chǎn)品 $ 30秒殺,香港新增DDOS最高100G,爆款VPS僅 $ 1.99!
[開源]開發(fā)者神器庫4
【每日一包0021】csv2,through2
css屬性的繼承、初識值、計算值、當(dāng)前值、應(yīng)用值
原生js實現(xiàn)ajax及get post方法