css3基本選擇器+屬性選擇器+動態偽類+UI狀態偽類+結構類

来源:https://www.cnblogs.com/chenyingying0/archive/2020/02/01/12250632.html
-Advertisement-
Play Games

後代選擇器 祖先元素 後代元素{ } 子元素選擇器(直接子元素選擇器) 父元素>子元素{ } 兄弟選擇器 元素+兄弟元素(緊鄰該元素之後的下一個兄弟元素) 所有兄弟元素選擇器 元素~兄弟元素(該元素之後的所有兄弟元素) <!DOCTYPE html> <html lang="en" manifest ...


後代選擇器

祖先元素 後代元素{ }

子元素選擇器(直接子元素選擇器)

父元素>子元素{ }


兄弟選擇器

元素+兄弟元素(緊鄰該元素之後的下一個兄弟元素)

所有兄弟元素選擇器

元素~兄弟元素(該元素之後的所有兄弟元素)

<!DOCTYPE html>
<html lang="en" manifest="index.manifest">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
    div+article{color:red;}
</style>
</head>
<body>
    <div>這是div</div>
    <article>這是article</article>
    <article>這是article</article>
</body>
</html>

 

 

 

<!DOCTYPE html>
<html lang="en" manifest="index.manifest">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
    div~article{color:red;}
</style>
</head>
<body>
    <div>這是div</div>
    <article>這是article</article>
    <article>這是article</article>
</body>
</html>

 

 

 屬性選擇器

元素[屬性]

選擇所有帶指定屬性的元素

元素[屬性=值]

選擇所有帶指定屬性,並且指定屬性值的元素

元素[屬性~=值]

選擇所有帶指定屬性,並且屬性所包含的某個單詞為指定屬性值的元素

元素[屬性*=值]

選擇所有帶指定屬性,並且屬性所包含的某個單詞或者字母為指定屬性值的元素

元素[屬性^=值]

選擇所有帶指定屬性,並且屬性以指定值開頭的元素,開頭可以是一個完整的單詞,也可以是單個字母

元素[屬性$=值]

選擇所有帶指定屬性,並且屬性以指定值結尾的元素,結尾可以是一個完整的單詞,也可以是單個字母

元素[屬性|=值]

選擇所有帶指定屬性,並且屬性值為指定值,或者屬性值以指定值-開頭(在js中常常使用到)

<!DOCTYPE html>
<html lang="en" manifest="index.manifest">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
    a[class]{font-weight:bold;}
    a[class="one"]{color:red;}
    a[class~="two"]{text-decoration: underline;}
    a[class^="one"]{font-style:italic;}
    a[class$="two"]{border-top:1px solid red;}
    a[class*="two"]{border-bottom:1px solid red;}
    a[class|="four"]{border-left:1px solid purple;}
</style>
</head>
<body>
    <a class="one">鏈接</a>
    <a class="one two">鏈接</a>
    <a class="three one two">鏈接</a>
    <a class="one~">鏈接</a>
    <a class="threetwo">鏈接</a>
    <a class="four">鏈接</a>
    <a class="four-oo">鏈接</a>
</body>
</html>

 

 

 動態偽類

:link  :visited  :hover  :active  :focus

<!DOCTYPE html>
<html lang="en" manifest="index.manifest">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
    a:link{color:red;}
    a:visited{color:blue;}
    a:hover{color:orange;}
    a:active{color:green;}

   input:hover{background-color: orange;}
input:focus{background-color: #abcdef;} </style> </head> <body> <a href="#">鏈接</a> <br> <input type="text"> </body> </html>

 

 

 

UI元素狀態偽類

:enabled  :disabled  :checked

<!DOCTYPE html>
<html lang="en" manifest="index.manifest">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
    input:enabled{background-color: red;}
    input:disabled{background-color: orange;}
    input:checked{width:100px;height:100px;}
</style>
</head>
<body>
    <input type="text"><br>
    <input type="text" enabled><br>
    <input type="text" disabled><br>
    <input type="checkbox" name="number" value="1">1 &nbsp;
    <input type="checkbox" name="number" value="2">2 &nbsp;
    <input type="checkbox" name="number" value="3">3 &nbsp;
</body>
</html>

 

 結構選擇器

ele:first-child

滿足某一個父元素的第一個子元素是指定元素

如section的第一個子元素,並且是div元素

<!DOCTYPE html>
<html lang="en" manifest="index.manifest">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
    section>div:first-child{color:red;}
</style>
</head>
<body>
    <section>
        <div>1</div>
        <div>2</div>
        <div>3</div>
    </section>
    <section>
        <p>1</div>
        <div>2</div>
        <div>3</div>
    </section>
    <section>
        <div>a</div>
        <div>b</div>
        <div>c</div>
    </section>
</body>
</html>

 

 :last-child  :nth-child(n)同理

:nth-child(數字) 某個位置

:nth-child(n) 所有

:nth-child(odd) 奇數

:nth-child(even) 偶數

:nth-child(計算式) 指定計算式(n的取值從0開始)

<!DOCTYPE html>
<html lang="en" manifest="index.manifest">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
    li:nth-child(1){list-style: none;}
    li:nth-child(n){font-weight:bold;}
    li:nth-child(odd){color:pink;}
    li:nth-child(even){color:#abcdef;}
    li:nth-child(3n+1){text-decoration: underline;}
</style>
</head>
<body>
    <ul>
        <li>1</li>
        <li>2</li>
        <li>3</li>
        <li>4</li>
        <li>5</li>
        <li>6</li>
        <li>7</li>
        <li>8</li>
        <li>9</li>
    </ul>
</body>
</html>

 

 nth-last-child() 同理

nth-of-type() 計數時會跳過非指定元素

<!DOCTYPE html>
<html lang="en" manifest="index.manifest">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
    li:nth-child(4){color:orange;} /*li的父元素的第4個子元素,且為li*/
    li:nth-of-type(4){background-color: #abcdef;}/* li的父元素的li子元素中的第4個*/
</style>
</head>
<body>
    <ul>
        <li>1</li>
        <li>2</li>
        <li>3</li>
        <p>4</p>
        <li>5</li>
        <li>6</li>
        <li>7</li>
        <li>8</li>
        <li>9</li>
    </ul>
    <ul>
        <li>1</li>
        <li>2</li>
        <li>3</li>
        <li>4</li>
        <li>5</li>
        <li>6</li>
        <li>7</li>
        <li>8</li>
        <li>9</li>
    </ul>
</body>
</html>

 

 nth-last-of-type() 同理

first-of-type()  last-of-type()

:only-child  作為唯一子元素

:only-of-type  指定類型的唯一子元素,可以有其他類型

<!DOCTYPE html>
<html lang="en" manifest="index.manifest">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
    p:only-child{color:orange;}
    p:only-of-type{background-color: #abcdef;}
</style>
</head>
<body>
    <ul>
        <li>1</li>
        <li>2</li>
        <li>3</li>
        <p>4</p>
        <li>5</li>
        <li>6</li>
        <li>7</li>
        <li>8</li>
        <li>9</li>
    </ul>
    <ul>
        <p>1</p>
    </ul>
</body>
</html>

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 背景 By 魯迅 By 高爾基 說明: 1. Kernel版本:4.14 2. ARM64處理器,Contex A53,雙核 3. 使用工具:Source Insight 3.5, Visio 1. 概述 從這篇文章開始,將開始Linux調度器的系列研究了。 本文也會從一些基礎的概念及數據結構入手, ...
  • 續上一篇隨筆:https://www.cnblogs.com/kingstarer/p/11355612.html《工作碰上的技術問題及處理經驗》(三) 我這人記憶力比較差,經常出現有些知識學了不久後就忘了,或者有些問題花了很多時間百度解決後,再過一段時間碰上時只有模糊印象,卻忘了具體解決方法。 最 ...
  • 1. 出現此類問題的原因 由於原visual studio文件中的安裝中出現問題,所以原有的SDK(soft development kits)文件出現缺失; 2. 解決方法1 重新下載SDK工具,安裝; 3. 解決方法2 修複visual studio2013,安裝SDK工具; 4. 解決方法3 ...
  • 運行作業界面在以下界面中,可以查看到作業的名稱、作業的啟動時間、作業總計運行時長、作業一共有多少個任務、當前正在運行多少個任務、以及作業的當前狀態。這裡的程式:一共有17個任務,當前正在運行的是17個任務。作業概覽界面在這個界面中,我們可以看到數據流圖。這個程式中,一共有3個運算元。Custom So... ...
  • Spark SQL可以使用JDBC/ODBC或命令行介面充當分散式查詢引擎。這種模式,用戶或者應用程式可以直接與Spark SQL交互,以運行SQL查詢,無需編寫任何代碼。Spark SQL提供兩種方式來運行SQL:通過運行Thrift Server直接執行Spark SQL命令行運行Thrift ... ...
  • `SELECT COUNT( ) FROM table_name`是個再常見不過的統計需求了。 本文帶你瞭解下 的`COUNT`函數。 一、 函數 關於 函數,在 官網中有 "詳細介紹" : 翻譯一下: 1. ,返回 語句檢索的行中 的值不為 的數量,結果是一個 值。 1. 如果查詢結果沒有命中任何 ...
  • 今天學習內容:觀看了嗶哩嗶哩上的安卓教學視頻,簡單瞭解下了安卓的基本知識 具體內容: 一、配置安卓開發環境(安裝Android studio,配置JDK) Android studio是個集成環境,不用配置JDK也可以正常使用,如果想要配置JDK,可以參考下麵的教程。 JDK配置教程鏈接:https ...
  • 在Android真機上調試程式有一個前提,就是這個apk包必須有 debuggable=true 的屬性才行。而除了自己開發的apk能夠控制打包屬性之外,其他的程式發行之後顯然不會設這個值為 true 的(不然隨隨便便就能被Debug ,豈不是很沒安全感 )。為了調試這些第三方的apk,我們可以從整 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...