>本文探討了元素查詢,這是一種強大的技術,將響應式設計功能擴展到傳統媒體查詢之外。 與對視口維度做出反應的媒體查詢不同,元素查詢允許基於單個元素屬性(例如寬度,角色計數或滾動位置)進行樣式。 這種增強的響應能力對於創建可重複使用的組件和處理動態佈局特別有益。
本文由Adrian Sandu,Giulio Mainardi和Tom Hodgins進行了同行評審。 感謝SitePoint的同行評審的貢獻。
元素查詢的關鍵優點:
組件級的響應能力:
樣式元素基於其內在屬性,而不僅僅是視口大小。 無論整體屏幕尺寸如何添加列:添加側邊欄會減少現有列的空間。 媒體查詢不會調整,但是元素查詢可以完美地調整圖像和文本的大小。
響應式窗口小部件:嵌入在不同寬度的容器中的小部件需要基於容器的大小而不是視口的造型。元素查詢提供此上下文感知的樣式。
包括eqcss.js:添加eqcss.js文件(可通過cdnjs或github提供)到您的HTML中。 對於IE8的支持,包括必要的polyfill。
>寫入元素查詢:使用@element
指令,然後是選擇器和條件,類似於媒體查詢。
<code class="language-css">@element ".content" and (max-width: 480px) { .content img { width: 100%; } }</code>
重新計算樣式:EQCSS.apply()
>
高級功能:
>元選擇器:>使用,$this
,$parent
,$prev
和$next
分別針對元素本身,其父,上一個兄弟姐妹或下一個兄弟姐妹。 >
字符計數:樣式元素基於其角色計數(例如,為長標題調整字體尺寸)。
性能考慮:
> eqcss依賴於JavaScript,因此性能取決於元素和查詢的數量。 避免過度使用,尤其是在性能敏感區域。 未來的瀏覽器功能,例如ResizeObserver
和Houdini承諾性能改進。
結論:
>
(省略了本節,但原始文本提供了可以在此處輕鬆合併的全面常見問題。)
以上是今天使用EQCSS編寫元素查詢的詳細內容。更多資訊請關注PHP中文網其他相關文章!