Hur man använder funktioner i mindre CSS

Hur man använder funktioner i mindre CSS
Läsare som du hjälper till att stödja MUO. När du gör ett köp med hjälp av länkar på vår webbplats kan vi tjäna en affiliate-provision. Läs mer.

Less CSS är en robust och dynamisk CSS-förprocessor som har fått stor uppmärksamhet och popularitet de senaste åren. Som en förprocessor fungerar den som en förlängning av 'Vanilla CSS', det traditionella CSS-stylingspråket som används i webbutveckling, genom att tillhandahålla en rad ytterligare funktioner och funktioner som förbättrar den övergripande stylingupplevelsen.





Dagens MUO-video SCROLL FÖR ATT FORTSÄTTA MED INNEHÅLL

Om du är väl bevandrad i att skriva standard CSS kan du sömlöst gå över till att använda Mindre CSS utan en brant inlärningskurva. Denna kompatibilitet gör det enkelt att underhålla din befintliga CSS-kunskap samtidigt som du utnyttjar de avancerade funktionerna hos Less.





Vad är funktioner och varför är de viktiga?

I programmering är en funktion ett kodblock som utför en specifik uppgift. Du kan också återanvända den någon annanstans i programmet. Funktioner tar vanligtvis in data, bearbetar dem och returnerar resultaten.





De gör det enkelt att reducera dubblettkod i ett program. Låt oss till exempel säga att du har ett program som beräknar rabatten utifrån det pris användaren anger. I en språk som JavaScript , du kan implementera det så här:

 function checkDiscount(price, threshold){ 
    if (price >= threshold){
        let discount = 5/100 * price;
        return `Your discount is $${discount}`;
    } else {
        return `Sorry, this item does not qualify for a discount. `
    }
}

Sedan kan du anropa funktionen och skicka in pris och den tröskel .



 let price = prompt("Enter the item price: ") 
alert(checkDiscount(price, 500))

Genom att abstrahera bort logiken för att kontrollera rabatter är programmet inte bara läsbart, utan du har nu ett återanvändbart kodblock som bearbetar rabatten och returnerar resultatet. Det finns mycket mer som funktioner kan göra, men detta är bara grunderna.

hur många personer kan vara på netflix

Förstå funktioner i mindre CSS

I traditionell CSS finns det en mycket begränsad uppsättning funktioner tillgängliga för dig som utvecklare. En av de mest populära funktionerna i CSS är calc() matematisk funktion som gör precis som det verkar – den utför beräkningar och använder resultatet som ett egenskapsvärde i CSS.





 p{ 
    background-color: red;
    width: calc(13px - 4px);
}

I Less CSS finns det flera funktioner som gör mer än bara aritmetiska operationer. En funktion som du kan stöta på i Less är om fungera. De om Funktionen tar in tre parametrar: ett villkor och två värden. Kodblocket nedan visar hur du kan använda denna funktion:

 @width: 10px; 
@height: 20px;
div{
    margin:if((@width > @height), 10px, 20px)
}

I kodblocket ovan kontrollerar Less-kompilatorn om variabeln bredd (definieras av @ symbol) är större än variabeln höjd . Om villkoret är sant returnerar funktionen det första värdet efter villkoret (10px). Annars returnerar funktionen det andra värdet (20px).





Efter kompileringen bör CSS-utgången se ut ungefär så här:

 div { 
    margin: 20px;
}

Hur man använder en boolean på mindre

En boolean är en variabel som har två möjliga värden: Sann eller falsk . Med boolean() funktion i Mindre kan du lagra det sanna eller falska värdet för ett uttryck i en variabel för senare användning. Så här fungerar det.

 @text-color: red; 
@bg-color: boolean(@text-color = red);

I kodblocket ovan kontrollerar Less-kompilatorn om text färg är röd. Sedan bg-färg variabel lagrar värdet.

 div{ 
    background-color: if(@bg-color,green,yellow);
}

Kodblocket ovan kompileras till något så här:

 div { 
  background-color: green;
}

Ersätta text i en sträng med funktionen replace().

Syntaxen för byta ut() funktionen ser ut så här:

 replace(string, pattern, replacement, flags) 

sträng representerar strängen som du vill söka och ersätta i. mönster är strängen att söka efter. mönster kan också vara ett reguljärt uttryck, men det är oftast en sträng. Efter en lyckad match ersätter Less CSS-kompilatorn det mönster med ersättning .

Eventuellt byta ut() funktionen kan också innehålla flaggor parameter för reguljära uttrycksflaggor.

 @string: "Hello"; 
@pattern: "ello";
@replacement: "i";

div::before{
    content: replace(@string,@pattern,@replacement)
}

Kodblocket ovan bör resultera i följande efter kompilering:

 div::before { 
  content: "Hi";
}

Lista funktioner i mindre CSS

I Mindre CSS använder du kommatecken eller mellanslag för att definiera en lista med värden. Till exempel:

 @groceries: "bread", "banana", "potato", "milk"; 

Du kan använda längd() funktion för att utvärdera antalet element i listan.

 @result: length(@groceries); 

Du kan också använda extrahera() funktion för att extrahera värdet på en viss position. Till exempel, om du vill få det tredje elementet i specerier listan gör du följande:

 @third-element: extract(@groceries, 3); 

Till skillnad från vanliga programmeringsspråk där listindexet börjar från 0, är ​​startindexet för en lista i Mindre CSS alltid 1.

En annan listfunktion som kan vara användbar när du bygger webbplatser med Less är räckvidd() fungera. Den tar in tre parametrar. Den första parametern anger startpositionen i området. Den andra parametern anger slutpositionen och den sista parametern anger öknings- eller minskningsvärdet mellan varje post i intervallet. Om det inte anges är standardvärdet 1.

hur man blockerar mitt nummer android
 div { 
    margin: range(10px, 40px, 10);
}

Kodblocket ovan bör kompileras till följande:

 div { 
 margin: 10px 20px 30px 40px;
}

Som du kan se börjar Less CSS-kompilatorn från 10px, vilket ökar det föregående värdet med 10, tills den når slutpositionen (40px).

Bygga en enkel webbplats med färre CSS-funktioner

Det är dags att samla allt du har lärt dig och skapa ett enkelt projekt med Mindre CSS. Skapa en mapp och lägg till index.htm och stil.mindre filer.

Öppna index.htm fil och lägg till följande HTML-kod.

 <!DOCTYPE html> 
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet/less" type="text/css" href="style.less" />
    <title>Document</title>
</head>
<body>
    <div class="container">
        <h1>
        </h1>
    </div>
<script src="https://cdn.jsdelivr.net/npm/less" ></script>
</body>
</html>

I kodblocket ovan finns en förälder 'behållare' div med en tom h1 element. De src attribut på manus taggen pekar på sökvägen till Less CSS-kompilatorn.

Utan detta manus taggen kommer webbläsaren inte att kunna förstå din kod. Alternativt kan du installera Less CSS på din dator via Nod Package Manager (NPM) , genom att köra följande kommando i terminalen:

 npm install -g less 

Närhelst du är redo att kompilera .mindre fil, kör bara kommandot nedan och se till att du anger filen som kompilatorn ska skriva utdata till.

 lessc style.less style.css 

I den stil.mindre fil, skapa två variabler nämligen: containerbredd och container-bg-färg för att representera bredden och bakgrundsfärgen på 'behållare' div respektive.

 @container-width: 50rem; 
@container-bg-color: yellow;

Skapa sedan tre variabler nämligen: sträng , mönster, och ersättning . Lägg sedan till stilarna för 'behållare' div och den h1 element.

 @string: "Hello from the children of planet Earth!"; 
@pattern: "children of planet Earth!";
@replacement: "inhabitants of Pluto!";

.container{
    width: @container-width;
    background-color: @container-bg-color;
    padding: if(@container-width > 30rem, range(20px, 80px, 20),"");
    border: solid;
}

h1:first-child::after{
    content: replace(@string,@pattern,@replacement);
}

I kodblocket ovan visas räckvidd() funktionen ställer in stoppning egendom på 'behållare' div . Less-kompilatorn bör kompilera stil.mindre fil i följande:

 .container { 
  width: 50rem;
  background-color: yellow;
  padding: 20px 40px 60px 80px;
  border: solid;
}
h1:first-child::after {
  content: "Hello from the inhabitants of Pluto!";
}

När du öppnar index.htm fil i webbläsaren, det här är vad du ska se:

  Skärmdump av det färdiga projektet

Förbättra din produktivitet med CSS-förprocessorer

I vanliga programmeringsspråk minskar funktioner mängden kod du behöver för att skriva och minimerar fel. CSS-förprocessorer som Less har flera funktioner som gör det lättare att skriva CSS-kod.

CSS-förprocessorer kommer väl till pass när man arbetar med stora filer. De gör det lättare att felsöka problem och förbättrar därmed utvecklarens produktivitet.