怎么自定義列表符號? – css筆記

    ul,li的無序列表有默認的符號·,但是在很多情況下我們希望可以給這個符號加入自己的樣式和顏色,甚至是換成自定義的符號

    ul,li的無序列表有默認的符號·,但是在很多情況下我們希望可以給這個符號加入自己的樣式和顏色,甚至是換成自定義的符號。默認的符號我們是無法做任何的樣式處理,而且默認的符號在CSS屬性里面只有幾個選擇可以使用,很多情況下都是無法滿足我們的設計。

    其實自定義無序列表符號不難,我們只需要使用偽元素::beforecontent屬性就可以實現。

    在我這個例子里面我做了兩個任務列表,一個是待處理任務,一個是已完成任務,各自給了不一樣的列表符號和顏色。

    怎么自定義列表符號? - css筆記

    實現原理

    一、首先我們禁用了ul的默認符號樣式list-style: none

    二、在li:before偽元素上給予content內容值,待處理任務使用,已完成任務li.completed:before使用?

    三、為了展示效果更加好看我分別給了lili .completed兩個不同的顏色

    上代碼看看是怎么實現的吧:

    HTML

    <div>
      <h2>待處理</h2>
      <ul>
        <li>待辦任務1</li>
        <li>待辦任務2</li>
        <li>待辦任務3</li>
        <li>待辦任務4</li>
        <li>待辦任務5</li>
      </ul>
    </div>
    <div>
      <h2>已完成</h2>
      <ul>
        <li class="completed">完成任務1</li>
        <li class="completed">完成任務2</li>
        <li class="completed">完成任務3</li>
      </ul>
    </div>
    

    CSS

    ul {
      list-style: none;
      color: #fff;
      font-size: 20px;
      border: 3px solid #000;
      padding: 1rem 2rem;
      min-height: 200px;
      margin: 15px 2rem 0 0;
      background: #323232;
      box-shadow: 0 1px 4px rgba(0, 0, 0, 0.6);
      border-radius: 8px;
    }
    
    li {
      padding: 0.3rem 0;
    }
    
    li::before {
      content: "  ";
      color: aqua;
    }
    
    li.completed::before {
      content: "? ";
      text-decoration: none;
      color: greenyellow;
    }
    
    li.completed {
      text-decoration: line-through;
      color: #bdbdbd;
    }
    

    ::before::after偽元素加content屬性可以用來做很多特殊的效果,也是當代前端排版比較常用的“魔法”。說到偽元素的使用,我再給大家說一個比較常用的使用場景。

    在管理后臺或者是文章展示中,我們經??梢砸姷降摹懊姘紝Ш健币彩怯脗卧貋聿迦朊總€目錄中間的符號的。

    怎么自定義列表符號? - css筆記

    實現邏輯

    一、這個導航含有3個a標簽,首先給每個a標簽加入一個偽元素::after,然后在content屬性插入/符號。

    二、然后使用a:first-child,這個偽類會選擇到第一個a標簽,然后使用content屬性加入?符號。

    三、因為我們第一步在每個a標簽的后面插入了/符號, 所以我們需要在最后一個a標簽清除掉。這里我們使用:last-child選擇到最后一個a標簽,然后用content: " "屬性把偽元素的內容清楚掉。

    HTML

    <div class="breadcrumb">
      <a>三鉆</a>
      <a>前端</a>
      <a>教程</a>
    </div>
    

    CSS

    .breadcrumb {
      font-size: 1.6rem;
      color: #fff;
    }
    .breadcrumb a:first-child {
      color: #82fcfd;
    }
    .breadcrumb a:first-child::before {
      content: " ? ";
    }
    .breadcrumb a::after {
      content: " /";
      color: #ef6eae;
    }
    .breadcrumb a:last-child::after {
      content: "";
    }
    

    知識總結

    • ::before | ::after?— 偽元素用于向某些選擇器添加特殊的效果。
    • content?— CSS 屬性用于在元素的 ::before 和 ::after 偽元素中插入內容。使用content 屬性插入的內容都是匿名的可替換元素。
    • :first-child?— CSS偽類表示在一組兄弟元素中的第一個元素。
    • :last-child?— CSS偽類代表父元素的最后一個子元素。

    當然,li元素自帶了一些可自定義的符號,可通過<ol type="a">的例子進行調用,當然,不贊成使用。請使用樣式取代它。

    下載權限
    查看
    • 免費下載
      評論并刷新后下載
      登錄后下載
    • {{attr.name}}:
    您當前的等級為
    登錄后免費下載登錄 小黑屋反思中,不準下載! 評論后刷新頁面下載評論 支付以后下載 請先登錄 您今天的下載次數(次)用完了,請明天再來 支付積分以后下載立即支付 支付以后下載立即支付 您當前的用戶組不允許下載升級會員
    您已獲得下載權限 您可以每天下載資源次,今日剩余

    給TA贊賞
    共{{data.count}}人
    人已贊賞
    ??
    Npcink上的部份代碼及教程來源于互聯網,僅供網友學習交流,若您喜歡本文可附上原文鏈接隨意轉載。
    無意侵害您的權益,請發送郵件至 1355471563#qq.com 或點擊右側 私信:Muze 反饋,我們將盡快處理。
    ?
    購物車
    優惠劵
    搜索
    主站蜘蛛池模板: 久久99国产精品一区二区| 国模大胆一区二区三区| 中文字幕无码免费久久9一区9| 亚洲熟女一区二区三区| 精品久久久中文字幕一区 | 麻豆国产一区二区在线观看| 相泽南亚洲一区二区在线播放| 亚洲福利视频一区| 精品人妻一区二区三区四区 | 国产日韩精品一区二区在线观看 | 中文字幕av日韩精品一区二区| 一区二区3区免费视频| 老熟女五十路乱子交尾中出一区| 中文字幕精品一区二区三区视频| 日韩免费一区二区三区在线| 一区二区精品久久| 亚洲av无码成人影院一区| 色窝窝无码一区二区三区| 国产午夜福利精品一区二区三区| 精品久久久久久中文字幕一区| 无码精品人妻一区二区三区免费看| 国产成人综合亚洲一区| 国产精品亚洲专区一区| 日韩AV片无码一区二区不卡| 无码人妻一区二区三区免费| 好爽毛片一区二区三区四无码三飞| 久久久久人妻一区二区三区| 色婷婷综合久久久久中文一区二区 | 夜夜爽一区二区三区精品| 国产成人无码精品一区不卡| 高清一区高清二区视频| 亚洲国产精品一区二区九九| 国产激情一区二区三区 | 精品国产免费一区二区三区| 国产成人精品无码一区二区三区| 国模私拍一区二区三区| 亚洲一区二区三区四区视频| 国产乱人伦精品一区二区在线观看| 精品国产一区二区三区免费看| 国产成人一区二区在线不卡| 亚洲AⅤ视频一区二区三区|