Lietuvių

Atraskite šiuolaikines CSS technikas, neapsiribojant karkasais, tokiais kaip Bootstrap. Išmokite naudoti CSS Grid, Flexbox, Pasirinktines savybes ir daugiau, kad kurtumėte našias ir lengvai prižiūrimas svetaines.

Šiuolaikinis CSS: Anapus Bootstrap ir karkasų

Daugeliui programuotojų kelionė į interneto svetainių kūrimą prasideda nuo CSS karkasų, tokių kaip Bootstrap ar Foundation. Šie karkasai suteikia greitą ir paprastą būdą kurti adaptyvias ir vizualiai patrauklias svetaines. Tačiau, pasikliaujant vien karkasais, galima susidurti su išpūstu kodu, pritaikymo galimybių trūkumu ir ribotu pagrindinių CSS koncepcijų supratimu. Šiame straipsnyje nagrinėjama, kaip pereiti nuo karkasų ir pasitelkti šiuolaikines CSS technikas, kad būtų galima kurti našesnes, lengviau prižiūrimas ir labiau individualizuotas svetaines.

CSS karkasų žavesys ir apribojimai

CSS karkasai suteikia keletą privalumų:

Tačiau karkasai turi ir apribojimų:

Šiuolaikinių CSS technikų pritaikymas

Šiuolaikinis CSS siūlo galingas funkcijas, kurios leidžia kurti sudėtingus išdėstymus, stulbinančias animacijas ir rašyti lengviau prižiūrimą kodą, stipriai nepasikliaujant karkasais.

1. CSS Grid išdėstymas

CSS Grid Layout yra dvimatė išdėstymo sistema, leidžianti lengvai kurti sudėtingus tinklelio pagrindu veikiančius išdėstymus. Ji suteikia galingus įrankius elementų išdėstymui ir dydžio nustatymui tinklelio konteineryje kontroliuoti.

Pavyzdys: Paprasto tinklelio išdėstymo kūrimas


.container {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr; /* Trys lygūs stulpeliai */
  grid-gap: 20px; /* Tarpas tarp tinklelio elementų */
}

.item {
  background-color: #f0f0f0;
  padding: 20px;
}

CSS Grid privalumai:

2. Flexbox išdėstymas

Flexbox Layout yra vienmatė išdėstymo sistema, suteikianti lankstų būdą paskirstyti erdvę tarp elementų konteineryje. Ji idealiai tinka kuriant navigacijos meniu, lygiuojant elementus ir kuriant adaptyvius komponentus.

Pavyzdys: Horizontalaus navigacijos meniu kūrimas


.nav {
  display: flex;
  justify-content: space-between; /* Tolygiai paskirstyti elementus */
  align-items: center; /* Vertikaliai lygiuoti elementus */
}

.nav-item {
  margin: 0 10px;
}

Flexbox privalumai:

3. CSS pasirinktinės savybės (kintamieji)

CSS pasirinktinės savybės, dar žinomos kaip CSS kintamieji, leidžia apibrėžti pakartotinai naudojamas reikšmes, kurias galima pritaikyti visame CSS kode. Tai daro jūsų kodą lengviau prižiūrimą, lankstesnį ir paprasčiau atnaujinamą.

Pavyzdys: Pagrindinės spalvos apibrėžimas ir naudojimas


:root {
  --primary-color: #007bff;
}

.button {
  background-color: var(--primary-color);
  color: white;
}

CSS pasirinktinių savybių privalumai:

4. CSS moduliai

CSS moduliai yra būdas rašyti CSS, kuris yra priskirtas konkrečiam komponentui. Tai apsaugo nuo pavadinimų konfliktų ir daro jūsų CSS modularesnį bei lengviau prižiūrimą. Nors tai nėra integruota CSS funkcija, jie dažnai naudojami su kūrimo įrankiais, tokiais kaip Webpack ar Parcel.

Pavyzdys: CSS modulių naudojimas su React komponentu


// Button.module.css
.button {
  background-color: #007bff;
  color: white;
  padding: 10px 20px;
}

// Button.js
import styles from './Button.module.css';

function Button(props) {
  return ;
}

export default Button;

CSS modulių privalumai:

5. CSS preprocesoriai (Sass, Less)

CSS preprocesoriai, tokie kaip Sass ir Less, praplečia CSS funkcionalumą pridėdami funkcijų, tokių kaip kintamieji, įdėjimas (nesting), „mixins“ ir funkcijos. Šios funkcijos gali padėti rašyti labiau organizuotą, prižiūrimą ir pakartotinai naudojamą CSS.

Pavyzdys: Sass kintamųjų ir įdėjimo (nesting) naudojimas


$primary-color: #007bff;

.button {
  background-color: $primary-color;
  color: white;

  &:hover {
    background-color: darken($primary-color, 10%);
  }
}

CSS preprocesorių privalumai:

6. CSS-in-JS

CSS-in-JS yra technika, apimanti CSS rašymą tiesiogiai JavaScript komponentuose. Šis metodas siūlo keletą privalumų, įskaitant komponento lygio stilių kūrimą, dinaminį stilių pritaikymą ir geresnį našumą.

Pavyzdys: „styled-components“ naudojimas su React


import styled from 'styled-components';

const Button = styled.button`
  background-color: #007bff;
  color: white;
  padding: 10px 20px;

  &:hover {
    background-color: darken(#007bff, 10%);
  }
`;

function MyComponent() {
  return ;
}

CSS-in-JS privalumai:

7. Atominis CSS (Funkcinis CSS)

Atominis CSS, dar žinomas kaip Funkcinis CSS, yra CSS rašymo metodas, apimantis mažų, vienos paskirties CSS klasių kūrimą. Šios klasės yra derinamos tarpusavyje, siekiant stilizuoti elementus. Šis metodas gali padėti sukurti lengviau prižiūrimą ir pakartotinai naudojamą CSS, tačiau HTML kodas gali tapti labai išsamus.

Pavyzdys: Atominių CSS klasių naudojimas



Atominio CSS privalumai:

Dizaino sistemos kūrimas su šiuolaikiniu CSS

Dizaino sistema yra pakartotinai naudojamų komponentų ir gairių rinkinys, užtikrinantis nuoseklumą ir efektyvumą projektavimo ir kūrimo procese. Šiuolaikinės CSS technikos gali atlikti lemiamą vaidmenį kuriant tvirtą ir plečiamą dizaino sistemą.

Pagrindiniai aspektai kuriant dizaino sistemą:

Pavyzdys: Dizaino sistemos struktūravimas naudojant pasirinktines savybes


:root {
  /* Spalvos */
  --primary-color: #007bff;
  --secondary-color: #6c757d;
  --accent-color: #ffc107;

  /* Tipografija */
  --font-family: sans-serif;
  --font-size-base: 16px;

  /* Tarpai */
  --spacing-sm: 8px;
  --spacing-md: 16px;
  --spacing-lg: 24px;
}

CSS našumo optimizavimas

CSS našumo optimizavimas yra labai svarbus siekiant užtikrinti greitą ir sklandžią vartotojo patirtį. Štai keletas patarimų, kaip pagerinti CSS našumą:

Prieinamumo aspektai

Prieinamumas yra esminis interneto svetainių kūrimo aspektas. Rašant CSS, svarbu atsižvelgti į vartotojų su negalia poreikius.

Pagrindiniai prieinamumo aspektai:

Pavyzdys: Pakankamo spalvų kontrasto užtikrinimas


.button {
  background-color: #007bff;
  color: white;
}

Šiame pavyzdyje įsitikinkite, kad kontrasto santykis tarp balto teksto ir mėlyno fono atitinka prieinamumo standartus (WCAG 2.1 AA reikalauja, kad kontrasto santykis būtų ne mažesnis kaip 4.5:1 normaliam tekstui ir 3:1 dideliam tekstui).

Perėjimas nuo karkasų: praktinis požiūris

Perėjimas nuo karkasų prie šiuolaikinio CSS nebūtinai turi būti „viskas arba nieko“ principu. Galite palaipsniui įtraukti šiuolaikines CSS technikas į savo esamus projektus.

Veiksmų planas:

  1. Pradėkite nuo mažų dalykų: Pradėkite naudoti CSS Grid ar Flexbox mažoms išdėstymo užduotims.
  2. Išmokite pagrindus: Skirkite laiko suprasti pagrindines CSS koncepcijas.
  3. Eksperimentuokite: Išbandykite įvairias CSS technikas ir pažiūrėkite, kas geriausiai tinka jūsų projektams.
  4. Palaipsniui perrašykite kodą: Palaipsniui perrašykite esamą kodą, naudodami šiuolaikines CSS technikas.
  5. Sukurkite komponentų biblioteką: Sukurkite pakartotinai naudojamų CSS komponentų biblioteką.

Išvados

Šiuolaikinis CSS siūlo galingą įrankių rinkinį, skirtą kurti našias, lengvai prižiūrimas ir individualizuotas svetaines. Pereidami nuo karkasų ir pasitelkdami šias technikas, galite gauti daugiau kontrolės savo kodui, pagerinti svetainės našumą ir sukurti unikalų prekės ženklo identitetą. Nors karkasai gali būti naudingas atspirties taškas, šiuolaikinio CSS įvaldymas yra būtinas norint tapti profesionaliu front-end programuotoju. Priimkite iššūkį, tyrinėkite galimybes ir atskleiskite visą CSS potencialą.

Šis vadovas yra skirtas kaip atspirties taškas jūsų kelionei į šiuolaikinį CSS. Nepamirškite tyrinėti oficialios kiekvienos funkcijos dokumentacijos, eksperimentuoti su įvairiomis technikomis ir pritaikyti jas savo konkretiems projekto poreikiams. Sėkmės programuojant!