国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

[譯]HTML&CSS Lesson8: 列表

csRyan / 720人閱讀

摘要:使用了值及其以下的所有列表項的數字標記將會按照值重新計數。嵌套列表的一個目的是便于識別列表的起始位置以及每個列表和列表項。嵌套列表完成后,閉合包裹的列表項并繼續在原列表項中操作。從正方形和十進制數一直到亞美尼亞編號都屬可用值范圍。

列表清單是我們日常生活的一部分。未辦事項清單確認我們接下來要做什么,行車導航提供路線列表,食譜提供成分列表和說明列表。幾乎所有的東西都有列表,這就很容易理解為什么它們在網上這么受歡迎。

若我們想在網站上創建列表,HTML提供了三種類型的列表:
無序列表、有序列表和描述列表。選擇哪種列表——或者是否使用列表——歸結于要顯示的內容以及語義上最符合當前內容的標簽選項。

除了HTML中提供了三種不同的列表,我們還可以在CSS中用多種方法實現這些列表。例如我們可以選擇在列表中使用哪種列表項標記。這個標記可以是方形、圓形、數字、字母或者將它隱藏。另外,我們還可以設置列表是縱向展示或橫向展示。所有這些選擇在頁面渲染中都扮演著重要的角色。

無序列表

無序列表就是一個內容相關但順序無關緊要的列表。用HTML創建無序列表,使用無序列表塊狀元素

    ,無序列表中的每一項都多帶帶使用列表項元素
  • 標記。

    默認情況下,大部分的瀏覽器都會為

      元素添加縱向的margin和左邊的padding,為
    • 元素設置一個前置的圓點標記。這些標記被稱為列表項標記,它可以用CSS修改。

      • Orange
      • Green
      • Blue

      有序列表

      有序列表元素

        與無序列表使用方式相同,列表項元素的創建也相同。它們的主要不同在于,對于有序列表來說,呈現列表項的順序非常重要。

        因為是有序的,所以列表項標記默認為數字,為非圓點。

        1. Head north on N Halsted St
        2. Turn right on W Diversey Pkwy
        3. Turn left on N Orchard St

        start 屬性

        start屬性定義列表項標記的數字從哪個值開始。默認情況下數字從1開始。但有可能列表需要從30或其他值開始。在

          元素上使用start屬性就可以定義有序列表開始計數的值。

          start屬性只接受整數值,即便有序列表可以使用不同類型的數字編號,例如羅馬數字。

          1. Head north on N Halsted St
          2. Turn right on W Diversey Pkwy
          3. Turn left on N Orchard St

          reversed 屬性

          當我們在

            元素上使用reversed屬性,表示列表倒序顯示。若一個有序列表有五個列表項15,將會按倒序51顯示。

            reversed屬性是一個布爾值(true或者false),除此之外它不接受任何其他值。false為默認值;當值為true時,

              元素的列表項將會按倒序顯示。

              1. Head north on N Halsted St
              2. Turn right on W Diversey Pkwy
              3. Turn left on N Orchard St

              value屬性

              value屬性可以使用在有序列表的

            1. 元素上,用以修改列表的標記值。使用了value值及其以下的所有列表項的數字標記將會按照value值重新計數。

              例如,我們在第二個列表項添加value值為9,那么這個列表項標記的數字顯示為9, 同時所有隨后的列表項標記都會從9以后開始計數。

              1. Head north on N Halsted St
              2. Turn right on W Diversey Pkwy
              3. Turn left on N Orchard St

              描述列表

              線上還有一種描述列表(但它沒有像無序列表和有序列表那么常見)。 描述列表常用于列出多個術語和描述,例如術語表。

              HTML創建描述列表使用描述列表元素

              。描述列表不再需要
            2. 元素標記列表項,而是用另外兩個塊狀元素代替:列表項術語元素
              和描述元素
              。

              描述列表可能包含了多個一對一的術語和描述。除此之外,也可能是多個術語對應一個描述或者多個描述對應一個術語。一個術語可能有多種含義和解釋。相對的,一個描述也可能適用于多個術語。

              當我們添加描述時,需要注意

              元素需要定義在
              元素之前。定義的術語和描述需彼此對應;所以這些元素的順序非常重要。

              默認情況下,

              元素與
                  元素一樣,帶有縱向外邊距。此外,
                  元素也有一個默認的左外邊距。

                  study
                  The devotion of time and attention to acquiring knowledge on an academic subject, especially by means of books
                  design
                  A plan or drawing produced to show the look and function or workings of a building, garment, or other object before it is built or made
                  Purpose, planning, or intention that exists or is thought to exist behind an action, fact, or material object
                  business
                  work
                  A person"s regular occupation, profession, or trade

                  列表嵌套

                  使列表極為強大的一個特性是它們嵌套的能力。每個列表都可以嵌套在另一個列表里;它們可以連續地嵌套。但這種無限嵌套的功能并不合適隨意使用。列表還是需要應用在最適合它們語義的地方。

                  嵌套列表的一個目的是便于識別列表的起始位置以及每個列表和列表項。拿無序列表和有序列表來說,嵌套列表時,

                    元素和
                      元素的直接子元素是
                    1. 元素。再重復一遍,
                        元素和
                          元素的直接子元素只能是
                        1. 元素。

                          也就是說,在

                        2. 元素內可以添加任何標準的元素標簽,包括
                              元素。

                              若要在列表項中嵌套一個列表,需要新建列表。嵌套列表完成后,閉合包裹的列表項并繼續在原列表項中操作。

                              1. Walk the dog
                              2. Fold laundry
                              3. Go to the grocery and buy:
                                • Milk
                                • Bread
                                • Cheese
                              4. Mow the lawn
                              5. Make dinner

                              因為嵌套列表有點復雜——如果寫錯樣式會錯亂—— 我們來快速回顧一下。

                                  元素只能包含
                                1. 元素。
                                2. 元素可以包含任何普通的元素;但
                                3. 元素本身只能是
                                      元素的子元素。

                                      值得注意的是,嵌套列表的項標記會根據嵌套的深度改變。在上面的例子中,無序列表在有序列表內以空心圓而非實心圓作為項標記。這是因為無序列表是有序列表的一級嵌套列表。

                                      幸運的是,我們可以控制任何級別的列表項標記,下面我們來看看。

                                      列表樣式

                                      無序和有序列表都有默認的項標記,無序列表通常是實心圓,而有序列表是數字。項標記的樣式和定位都可以通過CSS來調整。

                                      list-style-type屬性

                                      list-style-type屬性用于設置項標記的內容。從正方形和十進制數一直到亞美尼亞編號都屬可用值范圍。這個樣式可以寫在

                                        、
                                          或者
                                        1. 元素上

                                          任何list-style-type屬性值都可以添加到無序或者有序列表中。這一功能,可以在無序列表中使用數列項標記,在有序列表使用非數字項標記。

                                          HTML

                                          • Orange
                                          • Green
                                          • Blue

                                          CSS

                                          ul {
                                            list-style-type: square;
                                          }
                                          

                                          list-style-type屬性值

                                          前面提到了list-style-type屬性有一些不同的值。這里羅列出了這些值及其意義。

                                          list-style-type 備注
                                          none 無標記
                                          disc 實心圓
                                          circle 空心圓
                                          square 實心正方形
                                          decimal 十進制數
                                          decimal-leading-zero 初始值為0的十進制數
                                          lower-roman 小寫羅馬數字
                                          upper-roman 大寫羅馬數字
                                          lower-greek 小寫古希臘語
                                          lower-alpha / lower-latin 小寫ASCII字母
                                          upper-alpha / upper-latin 大寫ASCII字母
                                          armenian 亞美尼亞語
                                          georgian 傳統格魯吉亞編號
                                          圖片項標記

                                          我們總會碰到list-style-type屬性值不夠使用的時候,這時候我們就希望能夠自定義項標記。達到此目的最常用方法是為

                                        2. 元素設置背景圖。

                                          移除默認的list-style-type屬性值,然后在

                                        3. 元素設置背景圖和內邊距。

                                          詳細一點來說,就是將list-style-type屬性值設為none就可以移除項標記。使用background屬性定義一張背景圖,如有必要還可以為其設置定位和重復屬性。接下來設置一個左內邊距為背景圖留出足夠空間。代碼如下所示:

                                          HTML

                                          • Orange
                                          • Green
                                          • Blue

                                          CSS

                                          li {
                                            background: url("arrow.png") 0 50% no-repeat;
                                            list-style-type: none;
                                            padding-left: 12px;
                                          }
                                          

                                          list-style-position屬性

                                          默認情況下項標記位于

                                        4. 元素左側,此時list-style-position屬性的值為outside,表示元素所有內容都顯示在項標記右側。使用list-style-position屬性可以將默認值outside改為insideinherit。

                                          屬性值outside表示項標記位于

                                        5. 元素左側,并且不允許元素內容在項標記下環繞顯示。屬性值inside(非常少見)使項標記顯示在
                                        6. 元素第一行,并且允許其他內容在項標記下環繞顯示。

                                          HTML

                                          • Cupcakes...
                                          • Sprinkles...

                                          CSS

                                          ul {
                                            list-style-position: inside;
                                          }
                                          
                                          簡寫列表樣式屬性

                                          我們之前介紹的列表樣式屬性list-style-typelist-style-position可以簡寫成一個屬性值list-style。使用list-style屬性可以一次性設置一個或多個列表樣式屬性。簡寫值的順序為先設置list-style-type,后設置list-style-position

                                          ul {
                                            list-style: circle inside;
                                          }
                                          ol {
                                            list-style: lower-roman;
                                          }
                                          
                                          橫向列表

                                          偶爾我們也想要展示橫向列表。也許我們想將列表分成多列,來構建一個導航列表,或者將一些列表項放在一行中。基于內容和所需布局,有幾種不同的方法可以將列表設置為單行顯示,例如將

                                        7. 元素的display屬性設置為inlineinline-block,或者為元素設置浮動。

                                          display屬性

                                          將列表設置為單行顯示最便捷快速的方法就是把

                                        8. display屬性設置為inlineinline-block。設置后所有
                                        9. 元素會間隔一個空格,單行排列顯示。

                                          如果不需要每個

                                        10. 元素間的空格,可以根據第五課 定位 所學,移除元素間的空格。

                                          多半我們都會用inline-block而非inline屬性值。inline-block屬性值允許我們簡單快速地為元素添加縱向外邊距和

                                        11. 元素間的距離,這些是inline屬性值不能做到的。

                                          當我們將display屬性值改為inlineinline-block,列表項標記,如圓點、數字或者其他的樣式都會被移除。

                                          HTML

                                          • Orange
                                          • Green
                                          • Blue

                                          CSS

                                          li {
                                            display: inline-block;
                                            margin: 0 10px;
                                          }
                                          

                                          float屬性

                                          修改display屬性值為inlineinline-block確實很簡單快捷;但是這種方法移除了列表項標記。如果列表項標記是必須的,那么為

                                        12. 元素設置浮動比修改display屬性更合適。

                                        13. 元素的float屬性設置為left,所有
                                        14. 元素都會水平無間隙的排列顯示。當我們為
                                        15. 元素設置浮動后,列表項標記默認顯示,并位于相鄰
                                        16. 元素上。為避免列表項標記與
                                        17. 元素顯示重疊,需要添加橫向的marginpadding

                                          HTML

                                          • Orange
                                          • Green
                                          • Blue

                                          CSS

                                          li {
                                            float: left;
                                            margin: 0 20px;
                                          }
                                          

                                          為任何元素設置浮動,都破壞了頁面的流布局。所以我們必須要記得清除浮動——最常用的是clearfix方法——使頁面回到正常的流布局中。

                                          導航列表示例

                                          我們常用無序列表開發導航菜單欄。這些菜單欄通常使用以上提到的兩種方法實現水平布局。下面是一個將display屬性設置為inline-block的無序列表實現的水平菜單欄示例。

                                          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;
                                          }
                                          

                                          練習

                                          現在我們知道了如何使用HTML和CSS創建列表,我們回到樣式討論會網站,看看如何使用列表。

                                          目前我們頁面中所有

                                          元素內的菜單欄都由超鏈接元素組成。我們可以使用無序列表使這些元素更有條理。

                                          使用無序列表(

                                            元素)和列表項(
                                          • 元素)優化我們菜單欄的結構后,這些新的元素會使菜單欄縱向排列。

                                            為了使元素水平排列,我們將

                                          • 元素的display屬性值改為inline-block,但完成后
                                          • 元素間會留有間隙。回想第五課 定位 的內容,我們知道可以通過在
                                          • 元素的開始標簽和結束標簽之間添加注釋來消除空格。

                                            完成后,

                                            元素中的菜單欄代碼如下所示:

                                            
                                            

                                            同理,

                                            元素中的菜單欄修改后代碼如下所示:

                                            
                                            

                                            別忘了在所有HTML文件中修改這部分代碼

                                            寫好無序列表后,我們需要清除列表項的一些樣式,并將其設置為水平布局。 我們可以使用class nav來幫我們完成。

                                            我們將所有class為nav的元素內的

                                          • 元素的display屬性設置為inline-block,設置一些外邊距margin,并將垂直屬性vertical-align設置為上對齊top。

                                            除此之外,我們使用偽類選擇器:last-child將最后一個

                                          • 元素的右外邊距margin設為0。這是為了確保
                                          • 元素與父元素間的水平間隙都被移除。

                                            我們在main.css文件的導航樣式下,添加我們需要的樣式:

                                            .nav li {
                                              display: inline-block;
                                              margin: 0 10px;
                                              vertical-align: top;
                                            }
                                            .nav li:last-child {
                                              margin-right: 0;
                                            }
                                            

                                            你也許很疑惑為什么無序列表沒有項標記或別的默認樣式。這是因為這些樣式都在我們的樣式表中被重置了。如果去查看下重置的樣式,就會發現

                                              ,
                                                ,和
                                              1. 元素都設置了marginpadding0。
                                                    元素還設置了list-stylenone

                                                    我們的菜單欄不是唯一使用列表的地方,我們也將其應用到別的頁面中,例如Speakers頁面。 下面讓我們來給討論會添加演講者信息。

                                                    speakers.html文件的引導區塊下,添加一個新的區塊用來展示我們的演講者信息。我們可以復用一些現有的樣式,使用class屬性值為row

                                                    元素包裹演講者信息,可以直接應用到白色背景和內邊距。在
                                                    元素中添加class屬性為grid
                                                    元素用以集中展示我們的演講者信息

                                                    到此為止,添加的HTML如下所示:

                                                    元素中,每個演講者的信息都有獨立的元素,元素內有兩列。第一列由
                                                    元素標記,占用
                                                    元素2/3的空間,第二列由
最新活動
閱讀需要支付1元查看
<