LESS - @media 內部的作用域/擴充套件



描述

在 `@media` 宣告內,應該編寫 `extend`。`extend` 只匹配存在於相同 `@media` 宣告內的選擇器。`@media` 宣告中的 `extend` 不匹配巢狀宣告內的選擇器。

示例

以下示例演示了在 LESS 檔案中在 `@media` 內使用作用域擴充套件:

extend_syntax.htm

<!doctype html>
   <head>
      <link rel = "stylesheet" href = "style.css" type = "text/css" />
   </head>

   <body>
      <h2>Example using extend inside media</h2>
      <img src="/less/images/less-extend/nature.jpg" class = "style">
   </body>
</html>

接下來,建立 *style.less* 檔案。

style.less

@media screen {
   .style {
      width:500px;
   }
   @media (min-width: 1023px) {
      .style {
         width:500px;
      }
   }
}
.cont:extend(.style) {}

您可以使用以下命令將 *style.less* 檔案編譯為 *style.css*:

lessc style.less style.css

執行上述命令;它將自動建立包含以下程式碼的 *style.css* 檔案:

style.css

@media screen {
   .style,
   .cont {
      width: 500px;
   }
}

@media screen and (min-width: 1023px) {
   .style,
   .cont {
      width: 500px;
   }
}

輸出

請按照以下步驟檢視上述程式碼的工作原理:

  • 將上述 html 程式碼儲存到 **extend_syntax.htm** 檔案中。

  • 在瀏覽器中開啟此 HTML 檔案,將顯示以下輸出。

Less Extend
less_extend.htm
廣告