փաստորեն լավ CSS գրելը դա արվեստ ա… ու շատ ավելի բարդ քան բուն կայքի ծրագիրը..
դա վերջերս գրածս front-end-ից հասկացա.. քանի որ ժամանակ ունեի սեփական govnokod-ը վերանայելու, դզել-փչելու ու լավ պրակտիկաները կիրառելու:
իսկ լավ CSS նշանակում ա
1. REUSABLE classes
2. minimum classes,
3. layout and color distinction
4. ability of application of different color schemes..
5. NO ID selectors like #something
էս թեմայով
Breaking Good Habits (Harry Roberts) – Video
սա էլ նորաթուխների համար
HTML5 & CSS3 Fundamentals: Development for Absolute Beginners
Այ 5-րդ կետը չհասկացա, թե խի... Դե թեմայով ել հա, օպտիմալ CSS գրելը հեչ հեշտ գործ չի ))) Ու աստված չանի հանկարծ IE6ի տակ էլ քրոսբրաուզերության պահանջ լինի...
5-րդ կետը բխում ա 1-ին կետից: բացի դա, ID-ները CSS-ում գրելով, մենք արդեն իսկ սահմանափակումներ ենք առաջացնում JavaScript-ի համար: իսկ եթե JavaScript-ի նպատակահարմարությունից ելնելով, պահի տակ պետք եղավ ինչ-որ էլեմենտի ID փոխել ... ?? և առհասարակ, պետք ա առանձնացնել տեսքը բովանդակությունից, գունային ինֆորմացիան layout-ից..
Էդգար ջան, բայց ասենք ունենք մի հատ DIV օրինակ #header, ի՞նչ իմաստ ունի իրա CSS-ը հայտարարել կլասսով, եթե այդ էլեմենտը ունիկալա ու հետագայում անհավանականա որ JS օվ պետք լինի իրա ID-ն փոխել:
էս հարցին կարելիլ ա մյուս կողմից էլ նայել.. իսկ ինչ առավելություն ա տալիս #header-ը .header-ի նկատմամբ ? ոչ մի :Ճ երկրորդ. հարցին նայում ենք html5-ի կոնտեքստում, որտեղ կան header, article, ... և այլ սեմանտիկ թագեր. այսինքն տվյալ դեպքում էլեմենտին կարելի ա տալ style.
Հենց նոր CSS էի բզբզում ու ID ի մի հատ վատ կողմ կար իմ համար, որ եթե ID օվ ենք ինչ որ style տալիս, հետո կլասսի style օվ ինքը overwrite չի լինւմ... Փաստորեն իսկապես կլասսներով CSS ի վիզուալ մասը արժի իրականացնել Class-ներով, իսկ ID ները օգտագործել JS ի համար :-)
ինչ-որ բան են չես արել... նման սահմանափակում չկա:
մինիմումի հասցնել կլասների քանակը այդքան էլ միանշանակ չէ իմ համար, օրինակ արդյոք այս դեպքում ավելո՞րդ է li -ին տված կլասը, չէ որ եթե չտանք՝ ապա եթե ցանկանաք li-ին տալ որևէ հատկություն պետք է գրենք. առանց կլասս՝ .navigation li{ display:inline-block; } կլասսով՝ .item{ display:inline-block; } կլասս տալով հեշտացնում ենք բրաուզերի գործը, չէ որ այն կարդում է ցսս կոդը աջից ձախ. գտնում է li հետո ման է գալիս դրա ծնողին, իսկ կլասս տալով ուղղակի արագացնում ենք գործընթացը: Ինքս ժամանակին շատ ժլատ էի կլասսների հարցում, աշխատում էի քիչ տալ, իսկ հետո հասկացա, որ ուղղակի ինքս ինձ ու բրաուզերին տանջում եմ: ID-իների պահի հետ, լրիվ համամիտ եմ, դրանք արժե թողնել սկրիպտների համար:
պարսերը կերավ հտմլ-ը <!-- -->
մի խոսքով չի ստացվում դնել հտմլ օրինակի ռազմետկեն
Կոդը կարող եք գրել pre թագերի մեջ, այդ դեպքում չի փարսերը չի ուտի կոդը