Начална » кодиране на стоките » Стефка CSS срещу Longhand - кога да се използва Кой

    Стефка CSS срещу Longhand - кога да се използва Кой

    Стефан и Longhand - един е кратък и друг точен. Единият дойде до съществуването на желанието за краткост, а другият е твърдо, за да запази яснотата. Така или иначе, те имат своите цели, за и против, така да се каже.

    Тази публикация ще осветява стенографските нотации на CSS и дългите нотации, докато заключението е най-добре да се използва за коя ситуация.

    Какво е стенографска собственост?

    Стенен имот е свойство, което приема стойностите за други набори от свойства на CSS. Например, можем да присвоим стойност за гранично-широчина, гранично-стил и граничен цвят използвайки граница собственост.

    в основата си,

     граница: 1px плътно синьо; 

    е същото като:

     border-width: 1px; граничен стил: твърдо; граничен цвят: син;

    С това ние не трябва да декларираме отделни стойности на собственост (което е излишно, отнема време и пространство). Той също така нулира останалите свойства в декларацията, нещо, което може да се възползва.

    Как работи?

    Както вече споменахме, пишем набор от други стойности на свойствата в стенографски вид, като редът няма значение, ако всички стойности на свойствата са в краткото описание са от различен вид както в граница. За имоти с подобни видове ценности подобен марж, редът е от значение. Когато се съмнявате, помнете по часовниковата стрелка!

    Ами ако пропуснем имот или две в декларацията? В горния пример, да речем, че сме пренебрегнали гранично-стил.

     граница: 1px синьо; 

    Вече няма да можем да видим границите, не защото стенографската собственост не работи, а защото гранично-стил което оставихме, получи стойността по подразбиране нито един. Това е начинът, по който е предоставена тази стенография.

     граница: 1px няма синьо; 

    Сега нека изпуснем 1 пиксел за гранично-широчина и останалите две:

     граница: плътно синьо;

    Ще можем да видим границите само с по-дебела ширина и това е защото гранично-широчина имотът получи стойността по подразбиране среда.

     граница: средно твърдо синьо; 

    Това го завършва за нас когато стойността на имота е пропусната в стенографска декларация, това свойство поема стойността си по подразбиране (дори ако трябва да замени предишната стойност, зададена за същата).

    Ако има border-width: 1px; за някакъв елемент преди това граница: плътно синьо; за същото ще бъде и широчината на границата среда (стойността по подразбиране), не 1 пиксел.

    Друго нещо, което си струва да се спомене е това не можем да използваме подобни стойности наследят, първоначален или ненаместен, които са достъпни за всички свойства на CSS, в стенографска нотация. Ако ги използваме, браузърът няма да може да знае точно коя собственост трябва да представлява тази стойност в стенографа - цялата декларация ще бъде премахната.

    Най- всичко Имот

    Може да има и едно кратко копие на CSS задайте стойността за всички свойства на CSS. CSS-широки стойности наследят, първоначален и ненаместен са приложими за всички свойства и следователно това са единствените стойности, приети от всичко Имот.

     div all: начално

    Това ще направи Разделение елемента изхвърля ВСИЧКИ стойности на CSS свойствата, които имаше, и възстановява стойността по подразбиране във всяка от тях.

    . Предупреждение

    Нека не злоупотребяваме с всичко Имот. Необходимостта от това може да възникне само в много редки случаи, когато не можем да докоснем предходния CSS код на елемент, който искаме да приложим към това свойство.

    Забележка: CSS собственост цвят взима шестнадесетична стойност със съкратена нотация, ако двата номера на шестнадесетичната стойност във всеки цветен канал са еднакви. Например, фон: # 445599; е същото като фон: # 459;.

    Какво е собственост на дългите ръце?

    Най- индивидуални свойства които могат да бъдат включени в краткотрайно свойство, се наричат ​​дълготрайни свойства. Някои примери са; фон изображение, марж-наляво, анимация продължителност, и т.н..

    Защо да го използваме?

    Въпреки че стенографските алтернативи са удобни, те имат недостатък. Не забравяйте, че в началото видяхме как стенограмите отменят всички оставени свойства с техните стойности по подразбиране? Това може да е проблем, ако нулирането не е желано.

    Вземете шрифта например кратко описание на имота. Нека да го използваме в h4 елемент (който има стил на браузъра по подразбиране шрифт тегло: получер)

     шрифт: 20px "куриер нов"; 

    В горния кратък код няма стойност за шрифт тегло собственост, следователно шрифт тегло: получер(стил на браузъра по подразбиране) ще бъде заменен от стойността по подразбиране шрифт тегло: нормално причинявайки h4 елемент да загуби смелия си стил, който може да не е бил предназначен.

    Така че, за горния пример прости две дълги свойства, размер на шрифта и шрифтово семейство са перфектни.

    Също така, използвайки стенограмите за присвояването само на една или две стойности на свойства не е много полезно. Защо да дадете на браузъра допълнителна работа, за да интерпретира всяко едно свойство (включително и тези, които са останали) в стенография, когато е необходим само един за работа?

    Производството настрана, по време на етапа на разработка, някои разработчици (особено начинаещи) може да открият, че използването на дългите нотации е много по-лесно за работа, отколкото за кратко по-добра четливост и яснота.

    заключение

    Днес с възможността за бързо кодиране (с помощта на инструменти като Emmet) и минификация, висока надеждност на стенография не е необходима, но в същото време е много логично да се въведе марж: 0;. Контекстът, в който предпочитаме нашите CSS нотации, ще варира и всичко, което трябва да направим, е да разберем какво ще бъде най-доброто за нас и кога.