CSS Media Queries

基本上使用情境就是在不同尺寸下,開發者想要使用同一份 HTML 但想要不著不同的版面配置。

@media 是 CSS3 新屬性,而 Queries 就是查詢的意思。

Media 呼叫

在 HTML 中把 media 條件加入

<link rel="stylesheet" media="screen and (min-width: 768px)" href="test.css">

直接寫在 css file

@media screen and (min-width: 768px) and (max-width: 992px) {
    a {
        color: red;
    }
}

在 css file 使用 @import

@import "test.css" screen and (min-width: 992px) and (max-width: 1200px)

Queries 基本用法

@media [media type] and [(media feature)]

not, and, only 但我們就最常用的是 and,很容易記而且對有邏輯概念的人來說最好上手。

and 範例

單一條件
@media screen and (min-width: 768px) {
    css...
}
兩種條件以上
@media screen and (min-width: 768px) and (max-width: 992px) {
    css...
}
兩種條件符合一種即可
@media screen and (min-width: 768px), screen and (min-width: 992px) {
    css...
}

only 範例 - 有些瀏覽器不支援 Media Queries,但支援 Media Type,可使用 only 去阻擋瀏覽器讀取。

<link rel="stylesheet" href="test.css" media="only screen and (color)">

not 範例 - 用來排除某些條件,以下是彩色螢幕不會套用但是彩色列表機會套用設定。

@media not screen and (color), print and (color) {
    css...
}

最佳實務應用

思維轉換請由小裝置寫到大裝置,永遠使用擴增或是複寫屬性。

反過來的意思就是如果你要從大設計到小,表示你要複寫掉更多的屬性。

results matching ""

    No results matching ""