成都網(wǎng)站排名優(yōu)化今日新聞頭條新聞今天
大會官網(wǎng):www.cammic.org
大會時間:2025年3月21-23日
大會地點(diǎn):中國-上海(上海大學(xué)寶山校區(qū)北大門樂乎新樓)
簡介
第五屆應(yīng)用數(shù)學(xué)、建模與智能計算(CAMMIC 2025)將于2025年3月21-23日在中國上海召開。本次由上海大學(xué)主辦。該會議已成功舉辦四屆,吸引海內(nèi)外500余名專家學(xué)者參會。會議將圍繞"應(yīng)用數(shù)學(xué)””建模與仿真“”智能計算“的最新研究領(lǐng)域,為來自國內(nèi)外高等院校、科學(xué)研究所、企事業(yè)單位的專家、教授、學(xué)者、工程師等提供一個分享專業(yè)經(jīng)驗(yàn),擴(kuò)大專業(yè)網(wǎng)絡(luò),面對面交流新思想以及展示研究成果的國際平臺,探討本領(lǐng)域發(fā)展所面臨的關(guān)鍵性挑戰(zhàn)問題和研究方向,以期推動該領(lǐng)域理論、技術(shù)在高校和企業(yè)的發(fā)展和應(yīng)用,也為參會者建立業(yè)務(wù)或研究上的聯(lián)系以及尋找未來事業(yè)上的全球合作伙伴。
目錄
前言
一、CSS偽類選擇器分類
1. 動態(tài)偽類選擇器
常見的動態(tài)偽類
示例
2. 結(jié)構(gòu)偽類選擇器
常見的結(jié)構(gòu)偽類
示例
3. 語言和否定偽類選擇器
常見的語言和否定偽類
示例
4. UI偽類選擇器
常見的UI偽類
示例
二、總結(jié)
前言
本篇博客將深入講解CSS偽類選擇器,按照功能將其分類為:動態(tài)偽類、結(jié)構(gòu)偽類、語言和否定偽類、以及UI偽類,并提供詳細(xì)的用法、示例和注意事項(xiàng),幫助更好地掌握這些強(qiáng)大的工具。
一、CSS偽類選擇器分類
1. 動態(tài)偽類選擇器
動態(tài)偽類主要用于控制元素在不同交互狀態(tài)下的樣式變化,通常與用戶的鼠標(biāo)操作或鍵盤操作相關(guān)。
常見的動態(tài)偽類
:hover
—— 懸停狀態(tài):active
—— 被點(diǎn)擊或按下的狀態(tài):focus
—— 獲得焦點(diǎn)的狀態(tài):focus-within
—— 如果某元素或其子元素獲得焦點(diǎn):focus-visible
—— 當(dāng)元素具有焦點(diǎn)且被鍵盤聚焦時
示例
<button>點(diǎn)擊我</button>
<a href="#">懸停我</a>
<input type="text" placeholder="輸入文本">
/* 懸停狀態(tài) */
a:hover {color: red;
}/* 點(diǎn)擊狀態(tài) */
button:active {background-color: green;
}/* 焦點(diǎn)狀態(tài) */
input:focus {border: 2px solid blue;
}/* 焦點(diǎn)內(nèi)狀態(tài) */
div:focus-within {border: 2px solid purple;
}/* 僅當(dāng)鍵盤聚焦時顯示焦點(diǎn) */
input:focus-visible {outline: 3px solid orange;
}
注意事項(xiàng)
:hover
和:active
通常用于交互元素(如按鈕、鏈接),能夠給用戶提供反饋。:focus-within
特別適用于表單元素,能夠讓整個父容器在任意子元素獲取焦點(diǎn)時被高亮顯示。
2. 結(jié)構(gòu)偽類選擇器
結(jié)構(gòu)偽類選擇器幫助你根據(jù)元素在文檔中的位置或其父子關(guān)系來選中元素,而不依賴于元素的內(nèi)容。
常見的結(jié)構(gòu)偽類
:first-child
—— 父元素的第一個子元素:last-child
—— 父元素的最后一個子元素:nth-child(n)
—— 父元素中第n個子元素:nth-last-child(n)
—— 從后往前數(shù)的第n個子元素:only-child
—— 父元素中唯一的子元素:nth-of-type(n)
—— 同類型元素的第n個子元素:first-of-type
—— 同類型元素的第一個:last-of-type
—— 同類型元素的最后一個:empty
—— 沒有任何子元素的元素
示例
<ul><li>第一項(xiàng)</li><li>第二項(xiàng)</li><li>第三項(xiàng)</li>
</ul>
/* 父元素的第一個子元素 */
ul li:first-child {color: blue;
}/* 父元素的最后一個子元素 */
ul li:last-child {color: red;
}/* 第2個子元素 */
ul li:nth-child(2) {font-weight: bold;
}/* 父元素中唯一的子元素 */
div:only-child {background-color: lightgray;
}/* 只有第一項(xiàng)是li標(biāo)簽 */
ul li:first-of-type {font-size: 18px;
}
注意事項(xiàng)
:nth-child()
可以接受數(shù)字、關(guān)鍵字odd
(奇數(shù))和even
(偶數(shù)),也支持公式(如2n
表示每兩個元素)。- 使用
:nth-of-type()
時,確保你選擇的是同一類型的元素,如只選擇<li>
標(biāo)簽而不受其他標(biāo)簽影響。
3. 語言和否定偽類選擇器
語言和否定偽類選擇器主要用于通過元素的語言、類名、或者排除某些條件來選擇元素。
常見的語言和否定偽類
:lang(language)
—— 根據(jù)元素的語言屬性選擇元素:not(selector)
—— 排除與給定選擇器匹配的元素
示例
<p lang="en">This is an English paragraph.</p>
<p lang="fr">C'est un paragraphe en fran?ais.</p>
/* 選擇所有英語段落 */
p:lang(en) {color: blue;
}/* 排除所有具有class="exclude"的元素 */
div:not(.exclude) {background-color: yellow;
}
注意事項(xiàng)
:lang()
偽類選擇器非常適用于國際化(i18n)網(wǎng)頁設(shè)計,允許你根據(jù)不同的語言應(yīng)用不同的樣式。:not()
偽類可以用來排除不想匹配的元素,非常靈活,但要注意性能問題,在復(fù)雜選擇器中使用時要謹(jǐn)慎。
4. UI偽類選擇器
UI偽類選擇器用于根據(jù)元素的UI狀態(tài)(如是否選中、是否禁用等)進(jìn)行選擇。
常見的UI偽類
:checked
—— 選中狀態(tài)(如復(fù)選框或單選框):disabled
—— 禁用狀態(tài):enabled
—— 啟用狀態(tài):required
—— 必填狀態(tài):optional
—— 可選狀態(tài):valid
—— 表單元素內(nèi)容有效:invalid
—— 表單元素內(nèi)容無效
示例
<input type="checkbox" checked> 選中
<input type="checkbox"> 未選中
<input type="text" required>
/* 選中狀態(tài) */
input:checked {background-color: lightgreen;
}/* 禁用狀態(tài) */
input:disabled {background-color: lightgray;
}/* 必填狀態(tài) */
input:required {border: 2px solid red;
}
注意事項(xiàng):
:checked
常用于復(fù)選框和單選框,能夠控制它們在選中狀態(tài)時的樣式。:required
和:optional
是表單控件的偽類,常用于表單驗(yàn)證時應(yīng)用不同樣式。
<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>UI偽類</title><style>/* 選中勾選的復(fù)選或者單選框 */input:checked{width:30px;height:30px;}/* 選中可用的輸入框 */input:enabled{background-color:green;}/* 選中禁用的輸入框 */input:disabled{background-color:grey;}input:required {border: 20px solid red;
}</style>
</head>
<body><input type="checkbox"><input type="radio" name="gender"><input type="radio" name="gender"><input type="password" required></input><input type="text" disabled></input>
</body>
</html>
?
二、總結(jié)
CSS偽類選擇器為我們提供了強(qiáng)大的樣式控制功能。通過動態(tài)偽類、結(jié)構(gòu)偽類、語言和否定偽類以及UI偽類,我們可以輕松地根據(jù)元素的不同狀態(tài)、位置、類型或語言來應(yīng)用樣式。
掌握這些偽類選擇器的用法,能夠讓你的頁面更加智能和富有交互性,提升用戶體驗(yàn)。在實(shí)際開發(fā)中,偽類選擇器不僅減少了對JavaScript的依賴,還大大簡化了樣式的管理和實(shí)現(xiàn)。
通過合理運(yùn)用這些選擇器,你可以在不增加額外復(fù)雜度的情況下,讓你的網(wǎng)頁更具表現(xiàn)力和可訪問性。