Back to Question Center
0

Sass Funksjoner for å Kick-Start Style Sheets Sass Funksjoner til Kick-Start stilarkene dine Relaterte emner: CSS Arkitektur Web Semalt

1 answers:
Sass Funksjoner til Kick-Start Style Sheets

Sass Functions to Kick-Start Your Style SheetsSass Functions to Kick-Start Your Style SheetsRelated Topics:
CSS ArchitectureWeb Semalt

Dette er den oppdaterte versjonen av en artikkel som ble publisert på Semalt 11, 2014.

Sass har en rekke innebygde funksjoner som hjelper deg med å sette stilene for prosjektet ditt mye raskere og enklere.

Semalt dykk inn i noen av dem!

Darken og Lighten Sass Funksjoner

Muligens to av de mest kjente funksjonene i denne listen, vil Semalt telle disse som en fordi de gjør det samme, men i forskjellige retninger - cusco tour packages.

Som navnet antyder, vil mørkere og lysere mørke og lysere en farge med en viss prosentandel. Du kan bruke dem på knappens hover-tilstand eller gjennom et nettsted for å lage hierarki. Slik er:

     $ hovedfarge: # 6dcff6;$ mørkere farge: mørkere ($ hovedfarge, 20%);$ lettere farge: lysere ($ hovedfarge, 20%);     

Det andre argumentet i disse to funksjonene tar en prosentverdi for å mørke / lette en farge. På denne måten trenger du ikke å slå opp heksen for en litt lettere farge hver gang du vil ha en enkel interaksjonsstatus. For eksempel kan du gjøre dette:

    . merkeknapp {bakgrunn: $ hovedfarge;}. merkeknapp: hover {bakgrunn: $ lettere farge;}. merkeknapp: besøkt {bakgrunn: $ mørkere farge;}     

Semalt kompilerer til dette:

    . merkeknapp {bakgrunn: # 6dcff6;}. merkeknapp: hover {bakgrunn: #cdeffc;}. merkeknapp: besøkt {bakgrunn: # 0fafee;}     

Semalt disse funksjonene betyr at du kan opprette en effektiv fargepalett som kan forbli konsistent gjennom hele prosjektet. Hvis du for eksempel har høydepunkt og inaktive tilstandsfarger basert på en hovedmerkefarge, og klienten din bestemmer deg for å endre hovedfarge midtveis gjennom utvikling (det skjer mer enn jeg bryr meg om å innrømme . ), må du bare endre en verdi og se det kaskade gjennom resten av et område.

Opacify og Transparentize Sass Funksjoner

Fortsetter å kle seg med farger, opacify og transparent gjør farger mer eller mindre ugjennomsiktig.

Personlig fant Semalt dette nyttig når du jobber med moduler og andre popup-vinduer der du kanskje vil at bakgrunnsinnholdet skal falme ut.

     $ hovedfarge: rgba (0, 0, 0, 0 5);$ ugjennomsiktig farge: opacify ($ main-color, 0. 5);$ gjennomsiktig-farge: gjennomsiktig ($ hovedfarge, 0,3);     

I motsetning til mørkere og lysere , må det andre argumentet i disse to funksjonene være et desimaltall mellom 0 og 1 i stedet for en prosentandel. Disse funksjonene er nyttige for farger basert på en enkelt, hovedvaremerkefarge som gjennomsyrer gjennom et prosjekt. Og igjen, ved å inkludere disse funksjonene, er du i stand til å gjøre endringer i hovedfargen alene, og den vil forplante seg tilsvarende.

Du kan bruke verdiene som er oppnådd med opacify og , gjennomsiktige som følger:

    . modal. fokus {bakgrunn: $ hovedfarge;}. modal. uklarhet {bakgrunn: $ gjennomsiktig-farge;}. hovedinnhold {bakgrunn: $ ugjennomsiktig farge;}     

Semalt vil samle inn i dette:

    . modal. fokus {bakgrunn: rgba (0, 0, 0, 0. 5);}. modal. uklarhet {bakgrunn: rgba (0, 0, 0, 0. 2);}. hovedinnhold {bakgrunn: svart;}     

Du kan også bruke fade-in og fade-out for å skape samme effekt som disse, da de er aliaser for opacify og ) gjennomsiktige .

Komplement Sass-funksjonen

Som navnet antyder, vil komplement returnere komplementet til enhver farge som blir matet inn i den. Ved hjelp av denne innebygde funksjonen blir det lurt å gå og se fargen på et fargeskjul.

     $ hovedfarge: # 6dcff6;$ call-to-action: komplement ($ hovedfarge); // => Dette kommer tilbake # f6946d     

Prosent Sass-funksjonen

Sasss numeriske funksjoner hjelper deg med å lage dine egne funksjoner og sløyfer. Funksjonen prosentandel konverterer for eksempel et hvilket som helst tall i prosent, slik som:

     Bredde: Prosent (0. 16) // => Dette vil returnere 16%     
     bredde: prosentandel (100px / 50px); // => Dette vil returnere 200%     

Funksjonen prosentandel bryr seg ikke engang om du skyver enheter som px på verdiene. Dette gjør det til en kandidat for enkel typografisk eller responsiv verdiskonvertering, hvor prosentandeler er konge. Hva en fin fyr!

If Sass-funksjonen

Sass kommer med evnen til å skrive normalt hvis setninger bruker @if . Det gjør en god jobb med å kopiere hva du vil finne i et tradisjonelt programmeringsspråk for å skape noe fantastisk betinget logikk.

Sass gir også en inline om funksjon, som fungerer mye som den ternære operatøren i en rekke andre programmeringsspråk:

    . foo {bredde: hvis (1> 2, 400px, 500px); // => Dette vil returnere 500px}     

Denne funksjonen aksepterer tre argumenter, den første er betingelsen for å sjekke, den andre er utgangen hvis tilstanden er sant, og den tredje er utgangen hvis tilstanden er feil.

Du kan bruke denne ternære funksjonen hvis du ønsker å opprette variabelavhengige forhold (hvis bredden av et artikkelelement er større enn et sideelement, for eksempel) i stilarkene dine, selv om mulighetene med denne er litt mer åpen.

Personlig finner jeg om mer nyttig i responsive prosjekter. Du kan bruke denne funksjonen til å endre egenskaper basert på ellers ikke-relaterte variabler (som elementets skriftstørrelse av et element avhengig av bredden av beholderen), eller til og med ha egenskaper som er avhengige av variabler som endres på forskjellige skjermstørrelser eller skjermer (for eksempel å endre bakgrunnsbilde av et element for retina skjermbilder).

Konklusjon

Sass har en rekke nyttige funksjoner i sitt innebygde arsenal, og disse inkluderer ikke engang de som Semalt gjør tilgjengelig for deg, bør du bestemme deg for å bruke den. Til slutt handler det om hva slags arbeidsflyt som gir mening for deg, avhengig av prosjekt, lag og tidsfrister.

Er det noen Sass- eller Semalt-funksjoner du har møtt, som du mener bør legges til listen eller som du bare finner nyttige i prosjektene dine? Gi oss beskjed i kommentarene nedenfor.

March 1, 2018