CSS usor de intretinut

iNoob | Stefanescu Mihai | 2020-10-11

Cum cerintele de webdesign devin din ce in ce mai complexe, codul CSS devinde din ce in ce mai mare si mai greu de intretinut in timp. In acest articol am sa va vorbesc despre o serie de practici bune pentru a reusi sa aveti un fisier CSS ce poate fi intretinut cu ucurinta in timp.

Crearea unui "cuprins"

Cum fisierele CSS devin din ce in ce mai mari cu fiecare zi cred ca va fi mai usor sa gasiti ce cautati daca il impartiti in sectiuni.

/* reset  */

/* general */

/* typography */

/* header */

/* footer */

/* sidebar */

/* Home Page */

/* About Page */

/* Media Queries */

Scrierea codului CSS

Sunt sigur ca ati descarcat un fisier CSS de pe net sau poate chiar ati preluat codul CSS de la alt programator si ati avut surpriza de observa ca acest cod este greu de citit...acum, inchipuie-ti cat de greu va fi de modificat/intretinut acest cod.

Exista 2 moduri "standard" de a scrie CSS. Primul mod (si cel mai folosit), este modul "block":

#element{
	margin: 0 auto;
	width:80%;
	display: block;
}

Al doilea mod este cel "line":

#element{ margin: 0 auto; width:80%; display: block; }

Am incercat sa lucrez in ambele moduri, dar parerea mea este ca al doilea mod de a scrtie CSS devine putin obositor cand ai multe proprietati pe un element.

Folosirea Sass

CSS-ul era foarte simplu, dar cum timpul trece si apar tot felul de proprietati noi in fiecare zi devinde din ce in ce mai complex. De fapt, am ajuns in stadiul in care un fisier de 500 linii CSS este ceva normal, numai ca scrierea si intretinerea acestui fisier poate deveni destul de complicata. Aici intervin preprocesoarele precum SASS, iti permit folosirea unor lucruri ce nu exista in CSS, precum variabile, imbricare, mixins, mostenire si asa mai departe.

$font-stack:    Helvetica, sans-serif;
$primary-color: #333;

body {
  font: 100% $font-stack;
  color: $primary-color;
}

Foloseste in mod corect ID-uri si Clase

Pentru a evita redundanta in stylesheet este important sa folosim atent clasele si id-urile. Eu am tendinta de a nu folos id-uri in CSS, dar daca le-as folosi cu siguranta ar fi pentur elemente singure, precum logo-ul.

#logo{
	width: 250px;
	height:90px;
	display: block;
	float:left;
}

In shcimb, clasele sunt folosite pentur a fi aplicate pe mai multe elemente.

.box{
	background: #E4F0FC;
	margin: 1em 0px 1.5em;
	padding: 9px 10px 9px 15px;
	color: #555;
	text-shadow: none;
	font-weight: bold;
}

Combinarea stylesheet-urilor

De fiecare data cand puneti un fisier CSS intr-un fisier HTML browser-ul va trebui sa faca un request HTTP pentru a putea folosi acel fisier. Fiecare request HTTP dureaza o perioada de timp, deci site-ul se va incarca mai greu. Va recomand sa combinati fisierele CSS folosind un tool precum  CSS Compressor 

Editor pentru CSS

Puteti folosi orice editor pentru CSS, veti putea scrie codul chiar si cu notepad, dar viata v-ar fi mult mai usoara daca ati folosi un editor special pentru CSS.

Minificare si GZip

Un alt mod bun de a optimiza viteza de incarcare a site-ului este  si de micsora consumul de banda este minificarea si comprimarea fisierelor CSS. Minificarea este procesul de scoatere a spatiilor goale si a comentariilor din CSS (poate sa duca la o scadere de pana la 80% a dimensiunii unui fisier).

Gzip reduce marimea raspunsului venit de la requestul HTTP. Un stylesheet gzipped poate fi redus cu pana la 70%. Puteti activa acest gzip copiind acest cod in fisierul vostru .htaccess

# BEGIN GZIP
<ifmodule mod_deflate.c>
AddOutputFilterByType DEFLATE text/text text/html text/plain text/xml text/css application/x-javascript application/javascript
</ifmodule>
# END GZIP

 


Imi place ce faci aici
Daca iti place ce fac aici imi poti cumpara o cafea Buy Me a Coffee at ko-fi.com

Stefanescu Mihai
Programator de ~8 ani, am lucrat la proiecte din mai multe industrstrii, de la eCommerce la telecomunicatii la automatizari. In acest timp am folosi diferite tehnologii, de la PHP, MySQL, PostgreSql, RabbitMq, Redis, Memcached si altele.
       

Get in touch
Pentru nelamuriri, dubii, comentarii si chestii de pe suflet ne putem auzi pe Discord, Reddit sau poti deschide o discutie noua pe forum.

Posteaza un comentariu

Comentarii

Inca nu au fost postate comentarii, fii primul care posteaza un comentariu!

Club-ul este dedicat membrilor si ofera access la mai multe zone ale website-ului.

🗝ïļ Login 🌟 Register

🔖 Bookmarks ⊞
âœĻ Pentru a sustine aceasta comunitate am sa te rog sa te autentifici sau sa te inregistrezi!

🌊ïļ Discord ⊞

Folosim cookie-uri pentru a oferi functionalitatile critice ale aplicatiei Invata-Programare. Folosim cookie-uri si pentru a analiza traficul, pentru care e nevoie de consimtamantul dvs. explicit.

⮆ïļ