link
標籤的media
屬性指定樣式表應用於哪種媒體型別或裝置。它接受多種值,可以是單個值,也可以是用逗號分隔的多個值。以下是一些常見的值及其作用:
主要媒體型別:
all
: 適用於所有裝置。這是預設值,如果省略media
屬性,則等同於media="all"
。print
: 適用於列印預覽模式和列印頁面。用於設定列印樣式,例如頁面邊距、字型大小、隱藏不需要列印的元素等。screen
: 適用於彩色計算機螢幕。這是最常用的值之一,用於設定在螢幕上顯示的樣式。speech
: 適用於語音合成器。用於控制螢幕閱讀器或其他語音裝置如何朗讀頁面內容。
其他媒體型別(及特徵):
除了以上主要型別,還可以使用更具體的媒體特徵進行區分:
aspect-ratio
: 指定輸出裝置的寬高比。例如:media="(aspect-ratio: 16/9)"
適用於寬高比為 16:9 的螢幕。color
: 指示裝置是否支援彩色。media="(color)"
適用於支援彩色的裝置。media="(color-index)"
(已棄用) 適用於使用索引色的裝置。color-gamut
: 指定輸出裝置的顏色域。例如:media="(color-gamut: srgb)"
適用於支援 sRGB 顏色域的裝置。grid
: 指示輸出裝置是否基於網格。media="(grid)"
適用於基於網格的裝置,例如一些老式手機。height
: 指定輸出裝置的高度。例如:media="(height: 800px)"
適用於高度為 800 畫素的裝置。hover
: 指示使用者是否可以使用指標裝置(例如滑鼠)懸停在元素上。media="(hover: hover)"
適用於支援懸停的裝置。media="(hover: none)"
適用於不支援懸停的裝置,例如觸控式螢幕。orientation
: 指定輸出裝置的方向是橫向還是縱向。media="(orientation: portrait)"
適用於縱向模式。media="(orientation: landscape)"
適用於橫向模式。pointer
: 指示使用者的主要輸入機制的精度。media="(pointer: fine)"
適用於可以使用滑鼠或其他精確指標裝置的裝置。media="(pointer: coarse)"
適用於使用手指或其他粗略指標裝置的裝置,例如觸控式螢幕。resolution
: 指定輸出裝置的解析度。例如:media="(resolution: 96dpi)"
適用於解析度為 96dpi 的裝置。scan
: 指定電視型別螢幕的掃描過程。例如:media="(scan: progressive)"
適用於逐行掃描的螢幕。update
: 指示輸出裝置重新整理內容的頻率。media="(update: slow)"
適用於重新整理頻率低的裝置,例如電子墨水屏。width
: 指定輸出裝置的寬度。例如:media="(width: 1024px)"
適用於寬度為 1024 畫素的裝置。
邏輯運算子:
可以使用邏輯運算子組合多個媒體查詢:
and
: 所有條件都必須滿足。例如:media="screen and (min-width: 768px)"
or
: 至少有一個條件滿足。例如:media="screen, print"
(相當於screen or print
)not
: 排除特定條件。例如:media="not print"
,
(逗號): 相當於or
運算子。
示例:
<link rel="stylesheet" href="style.css" media="screen and (min-width: 768px)">
<link rel="stylesheet" href="print.css" media="print">
第一個連結標籤中的樣式表僅在螢幕寬度大於或等於 768 畫素時應用。第二個連結標籤中的樣式表僅在列印時應用。
透過使用 media
屬性,可以根據不同的裝置和環境定製樣式,從而提供最佳的使用者體驗。 記住,合理使用 media
屬性可以提高網站的效能和可訪問性。