目錄
标题
,
首頁 web前端 css教學 css3中all屬性有什麼用? css3中all屬性的用法介紹

css3中all屬性有什麼用? css3中all屬性的用法介紹

Oct 18, 2018 pm 03:38 PM
css css3

這篇文章帶給大家的內容是關於css3中all屬性有什麼用? css3中all屬性的用法介紹,有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。

一、相容性

如下圖:

css3中all屬性有什麼用? css3中all屬性的用法介紹

相容性還行, 除了IE不支持,其他瀏覽器基本上都是綠油油,目前自娛自樂,內網計畫什麼的都是可以用的。

二、all是幹嘛用的

all屬性其實是所有CSS屬性的縮寫,表示,所有的CSS屬性都怎樣,但是,不包括unicode-bidi和direction這兩個CSS屬性。

為什麼會有這個CSS屬性呢?

我們可能知道,有些CSS屬性值基本上所有CSS屬性都有,比方說繼承inherit!

我們CSS reset輸入框的時候,是不是有類似這樣的程式碼(實際上可能是具體值,作用類似):

input, textarea {
    color: inherit;
    font-size: inherit;
    font-family: inherit;
}
登入後複製

因為這類輸入控制項本身有內建的大小和字體,需要重置。

此時,大家就會發現,這些屬性值都是inherit, 要是可以合併就好了!

CSS all屬性就是用來合併的。

input, textarea { 
   all: inherit; 
}
登入後複製

這裡只是展示作用,實際上是不會這麼用的,因為,all:inherit會讓背景色什麼的,都繼承父級,相信這不是你希望看到的。

三、語法和區別

語法如下:

all: initial;
all: inherit;
all: unset;

/* CSS4特性,无视之 */
all: revert;
登入後複製

預設的HTML和CSS是這樣的,一個傳統的標籤內容,有標題有清單:

<article>
    <h6 id="标题">标题</h6>
    <p>p变文字</p>
    <ol>
        <li>有序列表1</li>
        <li>有序列表2</li>
        <li>有序列表3</li>
    </ol>
    <textarea>文本域</textarea>
</article>
article {
    background-color: #f0f3f9;
    color: green;
}
article > textarea {
    border: 1px solid #34538b;
    background-color: #ffffe0;
    color: red;
}
登入後複製

如你所見:

css3中all屬性有什麼用? css3中all屬性的用法介紹

顏色,間距,以及文字域狀態都是我們認為的樣子顯示。

現在,點選demo的下拉,選擇對應的all屬性值,實現下面CSS效果:

.initial > * {
    all: initial;
}
.inherit > * {
    all: inherit;
}
.unset > * {
    all: unset;
}
登入後複製

結果:

css3中all屬性有什麼用? css3中all屬性的用法介紹

##initial是初始值的意思,也就是,article元素下面所有的第一級子元素都除了unicode-bidi和direction以外的CSS都使用初始值。

例如,
,

元素瀏覽器內建的display:block直接拜拜了,都變成了inline元素,因此在一行顯示:

css3中all屬性有什麼用? css3中all屬性的用法介紹

#font-size也使用了瀏覽器軟體本身設定的大小16px,color顏色也變成了瀏覽器軟體本身的黑色。例如,在瀏覽器設定中改變字號,從中變成大:

css3中all屬性有什麼用? css3中all屬性的用法介紹

#會看到顯示的文字內容也變大了:

css3中all屬性有什麼用? css3中all屬性的用法介紹

由於我們只是對相鄰層級子元素進行了initial設置,因此,
  • 元素不受影響,但是,由於在父元素在不明的情況下,
  • 元素的預設是打點,因此,這裡從數字變成了點,list-style-type和list-style-position都變化了。

    css3中all屬性有什麼用? css3中all屬性的用法介紹

    inherit是繼承的意思,也就是,article元素下面所有的相鄰子元素都除了unicode-bidi和direction以外的CSS都繼承了
    元素的CSS。

    因此,
    ,

    元素還是塊狀的,background-color都是

    元素的背景色,color顏色也跟
    一樣,是綠色(文字域的紅色被幹掉了)。

    不只上面這些CSS,padding/margin也都繼承了,只是預設是0, 看不出來,我們稍微修改下,例如給
    元素來個margin值:

    css3中all屬性有什麼用? css3中all屬性的用法介紹

    結果,那些子元素都開花了:

    css3中all屬性有什麼用? css3中all屬性的用法介紹

    unset

    css3中all屬性有什麼用? css3中all屬性的用法介紹

    #unset是取消設定的意思,也就是, article元素下面所有的相鄰子元素除了unicode-bidi和direction以外的CSS都乾掉都不要,不要了那用什麼呢? unset值的特性如下,當前元素瀏覽器或使用者設定的CSS忽略,然後如果是具有繼承特性的CSS,如color, 則使用繼承值;如果是沒有繼承特性的CSS屬性,如background-color, 則使用初始值。

    因此,

    ,

    元素的display屬性值使用了initial初始值,因此變成了inline元素,兩個同一行顯示了;而這些元素的color顏色使用了inherit繼承值,因此都是綠色,

    最後

    all所牽扯的CSS實在太多了,我目前還是想不出有什麼場景,就是要用這個CSS屬性。或者說什麼時候,希望特殊的元素一下子變成普通元素,例如,input輸入框外面一個p,來個input{all:inherit;},貌似還真有這樣的場景,輸入框不需要border不需要background不需要padding不需要margin。

    #

  • 以上是css3中all屬性有什麼用? css3中all屬性的用法介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

    本網站聲明
    本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

    熱AI工具

    Undresser.AI Undress

    Undresser.AI Undress

    人工智慧驅動的應用程序,用於創建逼真的裸體照片

    AI Clothes Remover

    AI Clothes Remover

    用於從照片中去除衣服的線上人工智慧工具。

    Undress AI Tool

    Undress AI Tool

    免費脫衣圖片

    Clothoff.io

    Clothoff.io

    AI脫衣器

    Video Face Swap

    Video Face Swap

    使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

    熱工具

    記事本++7.3.1

    記事本++7.3.1

    好用且免費的程式碼編輯器

    SublimeText3漢化版

    SublimeText3漢化版

    中文版,非常好用

    禪工作室 13.0.1

    禪工作室 13.0.1

    強大的PHP整合開發環境

    Dreamweaver CS6

    Dreamweaver CS6

    視覺化網頁開發工具

    SublimeText3 Mac版

    SublimeText3 Mac版

    神級程式碼編輯軟體(SublimeText3)

    vue中怎麼用bootstrap vue中怎麼用bootstrap Apr 07, 2025 pm 11:33 PM

    在 Vue.js 中使用 Bootstrap 分為五個步驟:安裝 Bootstrap。在 main.js 中導入 Bootstrap。直接在模板中使用 Bootstrap 組件。可選:自定義樣式。可選:使用插件。

    HTML,CSS和JavaScript的角色:核心職責 HTML,CSS和JavaScript的角色:核心職責 Apr 08, 2025 pm 07:05 PM

    HTML定義網頁結構,CSS負責樣式和佈局,JavaScript賦予動態交互。三者在網頁開發中各司其職,共同構建豐富多彩的網站。

    了解HTML,CSS和JavaScript:初學者指南 了解HTML,CSS和JavaScript:初學者指南 Apr 12, 2025 am 12:02 AM

    WebDevelovermentReliesonHtml,CSS和JavaScript:1)HTMLStructuresContent,2)CSSStyleSIT和3)JavaScriptAddSstractivity,形成thebasisofmodernWebemodernWebExexperiences。

    bootstrap怎麼寫分割線 bootstrap怎麼寫分割線 Apr 07, 2025 pm 03:12 PM

    創建 Bootstrap 分割線有兩種方法:使用 標籤,可創建水平分割線。使用 CSS border 屬性,可創建自定義樣式的分割線。

    bootstrap怎麼設置框架 bootstrap怎麼設置框架 Apr 07, 2025 pm 03:27 PM

    要設置 Bootstrap 框架,需要按照以下步驟:1. 通過 CDN 引用 Bootstrap 文件;2. 下載文件並將其託管在自己的服務器上;3. 在 HTML 中包含 Bootstrap 文件;4. 根據需要編譯 Sass/Less;5. 導入定製文件(可選)。設置完成後,即可使用 Bootstrap 的網格系統、組件和样式創建響應式網站和應用程序。

    bootstrap怎麼插入圖片 bootstrap怎麼插入圖片 Apr 07, 2025 pm 03:30 PM

    在 Bootstrap 中插入圖片有以下幾種方法:直接插入圖片,使用 HTML 的 img 標籤。使用 Bootstrap 圖像組件,可以提供響應式圖片和更多樣式。設置圖片大小,使用 img-fluid 類可以使圖片自適應。設置邊框,使用 img-bordered 類。設置圓角,使用 img-rounded 類。設置陰影,使用 shadow 類。調整圖片大小和位置,使用 CSS 樣式。使用背景圖片,使用 background-image CSS 屬性。

    bootstrap按鈕怎麼用 bootstrap按鈕怎麼用 Apr 07, 2025 pm 03:09 PM

    如何使用 Bootstrap 按鈕?引入 Bootstrap CSS創建按鈕元素並添加 Bootstrap 按鈕類添加按鈕文本

    bootstrap怎麼調整大小 bootstrap怎麼調整大小 Apr 07, 2025 pm 03:18 PM

    要調整 Bootstrap 中元素大小,可以使用尺寸類,具體包括:調整寬度:.col-、.w-、.mw-調整高度:.h-、.min-h-、.max-h-

    See all articles