目錄
LESS 中的不同操作
Calc() 例外
範例
輸出
結論
首頁 web前端 css教學 LESS中的運算有什麼用?

LESS中的運算有什麼用?

Sep 01, 2023 pm 08:25 PM

LESS中的運算有什麼用?

LESS(精簡樣式表)是一種動態樣式表語言,它透過附加功能擴展了 CSS(層疊樣式表)。它提供了多種操作來對CSS值進行數學計算,這使得開發人員可以創建更靈活和動態的樣​​式。

本教學將教我們如何在 LESS 中進行這些操作,並建立適應不同螢幕尺寸和裝置的樣式。

LESS 中的不同操作

以下是一些可以在 LESS 中使用的操作 -

加法 ( ) 和減法 (-) # 這些運算讓我們可以互相加法或減去數值。

乘法 (*) 和除法 (/)  這些運算允許我們對值進行乘法或除法。

Calc() 例外

CSS 中的 calc() 函數允許我們對可在 CSS 中使用的值執行數學運算。此函數可用於根據其他值計算元素的寬度或高度,這在響應式設計中非常有用。

需要注意的一件重要事情是 calc() 預設不計算數學表達式。這樣做是出於 CSS 相容性原因,因為某些瀏覽器可能不支援某些數學函數。但是,calc() 將計算巢狀函數中的變數和數學,讓使用者可以執行更複雜的計算。

例如,假設我們有一個變數@width。我們可以在 calc() 函數中使用此變數來計算元素的寬度,如下所示:

@width:50vh;
h1 {
   width: calc(50% + (@width - 20px));
}
登入後複製

結果值為 calc(50% (50vh - 20px))。

範例

在此範例中,我們定義了一個 @base-size 變量,然後使用加法和減法運算建立兩個新變數 @large-size 和 @small-size。 @large-size 變數在基本尺寸上加上 4px,而 @small-size 變數則從基本尺寸中減去 2px。然後,我們使用這些變數來設定 h1 和 p 元素的字體大小。

@base-size: 16px;
@large-size: @base-size + 4px; // Adds 4px to base size
@small-size: @base-size - 2px; // Subtracts 2px from base size
 
h1 {
   font-size: @large-size;
}
 
p {
   font-size: @small-size;
}

登入後複製

輸出

h1 {
   font-size: 20px;
}
p {
   font-size: 14px;
}
登入後複製

範例

在此範例中,我們使用變數來設定佈局的基本寬度和列數。然後,我們透過將基本寬度除以列數來計算每列的寬度。最後,在媒體查詢中,我們將半角列的寬度設定為列寬的6倍,透過乘法計算得出。

@base-width: 960px;
@column-count: 12;
@column-width: @base-width / @column-count; 
@media (min-width: 768px) {
   .col-md-6 {
      width: @column-width * 6; 
   }
}
登入後複製

輸出

@media (min-width: 768px) {
   .col-md-6 {
      width: 960px / 12 * 6;
   }
}
登入後複製

範例

在此範例中,我們首先將數學設定變更為始終,然後定義標題和導航元素高度的變數。我們使用 calc() 函數使用先前定義的變數來計算主元素的高度。

接下來,我們將數學設定重設為預設值,並為框的寬度及其填充定義新變數。我們使用數學運算來計算框的寬度並相應地設定其寬度。

透過將數學設定更改為始終,我們可以執行複雜的數學運算,而無需將其簡化為最簡單的形式,從而更好地控制我們的樣式。

// Set math setting to always
@math: always;
 
// Define variables
@header-height: 80px;
@nav-height: 50px;
 
// Set height of the header
header {
   height: @header-height;
} 
// Set height of the nav
nav {
   height: @nav-height;
} 
// Calculate the height of the main using calc()
main {
   height: calc(100% - (@header-height + @nav-height));
} 
// Reset math setting to default
@math: default; 

// Define new variables
@box-width: 300px;
@padding: 20px; 

// Calculate the width of the box using math operations
.box {
   width: @box-width + @padding;
}
登入後複製

輸出

header {
   height: 80px;
}
nav {
   height: 50px;
}
main {
   height: calc(100% - (80px + 50px));
}
.box {
   width: 320px;
}
登入後複製

範例

在此範例中,我們定義了兩種顏色(@color-1 和 @color-2),並使用 LESS 對它們執行不同的算術運算。我們將兩種顏色加在一起,從第一種顏色中減去第二種顏色,將第一種顏色乘以 50%,然後將兩種顏色混合,每種顏色的權重為 50%。

使用者可以在輸出中觀察到每個操作都會產生一種新顏色,該顏色可以用作 CSS 屬性的值。

// Define two colors
@color-1: #ff0000;
@color-2: #00ff00;
 
// Add the two colors together
.add-colors {
   background-color: @color-1 + @color-2;
}
 
// Subtract the second color from the first
.subtract-colors {
   background-color: @color-1 - @color-2;
}
 
// Multiply the first color by 50%
.multiply-color {
   background-color: @color-1 * 50%;
}
 
// Mix the two colors with a 50% weight for each
.mix-colors {
   background-color: mix(@color-1, @color-2, 50%);
}
登入後複製

輸出

.add-colors {
   background-color: #ffff00;
}
.subtract-colors {
   background-color: #ff0000;
}
.multiply-color {
   background-color: #ff0000;
}
.mix-colors {
   background-color: #808000;
}
登入後複製

結論

使用者學習如何在 LESS 中使用各種算術運算,包括加法、減法、乘法和除法。他們也學會了使用 calc() 函數執行複雜的數學計算。

除了數值的算術運算之外,使用者還了解了顏色的算術運算。這涉及添加或減去顏色值,例如 RGB、HEX 或 HSL 值。

以上是LESS中的運算有什麼用?的詳細內容。更多資訊請關注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 3 VUE 3 Apr 02, 2025 pm 06:32 PM

它的出局!恭喜Vue團隊完成了完成,我知道這是一項巨大的努力,而且很長時間。所有新文檔也是如此。

您可以從瀏覽器獲得有效的CSS屬性值嗎? 您可以從瀏覽器獲得有效的CSS屬性值嗎? Apr 02, 2025 pm 06:17 PM

我有人寫了這個非常合法的問題。 Lea只是在博客上介紹瞭如何從瀏覽器中獲得有效的CSS屬性。那樣的是這樣。

在CI/CD上有點 在CI/CD上有點 Apr 02, 2025 pm 06:21 PM

我說的“網站”比“移動應用程序”更合適,但我喜歡Max Lynch的框架:

帶有粘性定位的堆疊卡和一點點的雜物 帶有粘性定位的堆疊卡和一點點的雜物 Apr 03, 2025 am 10:30 AM

前幾天,我發現了科里·金尼文(Corey Ginnivan)網站上的這一點,當您滾動時,彼此之間的卡片堆放集。

在WordPress塊編輯器中使用Markdown和本地化 在WordPress塊編輯器中使用Markdown和本地化 Apr 02, 2025 am 04:27 AM

如果我們需要直接在WordPress編輯器中向用戶顯示文檔,那麼最佳方法是什麼?

比較瀏覽器的響應式設計 比較瀏覽器的響應式設計 Apr 02, 2025 pm 06:25 PM

這些桌面應用程序中有許多目標是同時在不同的維度上顯示您的網站。因此,例如,您可以寫作

為什麼Flex佈局中的紫色斜線區域會被誤認為是'溢出空間”? 為什麼Flex佈局中的紫色斜線區域會被誤認為是'溢出空間”? Apr 05, 2025 pm 05:51 PM

關於Flex佈局中紫色斜線區域的疑問在使用Flex佈局時,你可能會遇到一些令人困惑的現象,比如在開發者工具(d...

如何將CSS網格用於粘頭和頁腳 如何將CSS網格用於粘頭和頁腳 Apr 02, 2025 pm 06:29 PM

CSS網格是一系列屬性的集合,旨在使佈局比以往任何時候都容易。像任何東西一樣,那裡有一點學習曲線,但是網格是

See all articles