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

. Погледнете кода на всеки сайт, който намерите в Интернет, и ще видите, че етикетът
се среща по-често от други тагове в HTMLдокумент. Причината за такава популярност е блоковото оформление. С други думи, с помощта на маркера block
сайтове се създават.

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

без техните "сателити" - селектори документ за самоличностИ класбезполезен.

Класове и идентификатори

Класове (клас)и идентификатори (документ за самоличност)изпълняват същите задачи. Те задават различни стилове за етикета

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

Разгледайте следния HTML код за маркиране в примера по-долу:

Никога не е късно да се научиш!


Повторението е майката на ученето

Задайте външния вид HTMLизползване на документ cssстилов файл:

/* знак # пред името - обозначение id */

#съдържание(
подложка: 20px
размер на шрифта: 20px;
цвят черен;
фон: #ddd;
рамка: 1px плътно черно;
ширина: 250px
}

/* (.) пред името означава клас */

съдържание(
подложка: 20px
размер на шрифта: 20px;
цвят черен;
фон: #ddd;
рамка: 1px плътно черно;
ширина: 250px
}

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

Виждаме два абсолютно еднакви блока. Селекторът се прилага към горния блок документ за самоличности селекторът ще бъде приложен към долния блок клас. Каква е разликата между divs id и клас? Чисто външно, стига да няма разлика, стига да нанасяме едно по едно документ за самоличностИ класедна страница.

Тогава каква е разликата между класИ документ за самоличност?

Разликата е в самото име. документ за самоличност, означава идентификатор, тоест уникален. Основната разлика от класовете е, че селекторът документ за самоличностможе да се използва само веднъж на страница. Селектор клас, напротив, може да се използва на една и съща страница безкраен брой пъти.

Например:

Съдържание /* може да се приложи към всякакви тагове */
div.content /* се отнася само за div с клас .content */
div#content /* за id такъв запис няма смисъл, той е уникален */

Заслужава да се отбележи също, че документ за самоличностсвойствата имат по-висок приоритет от свойствата на класа.


червен текст

Този пример ясно показва, че макар классъс син текст отдолу, текстът все още е червен. Ако документ за самоличностняма приоритет, тогава текстът ще бъде син.

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

Има още една важна разлика, тя се отнася до програмистите. Ако планирате достъп до елемента HTMLдокумент чрез език JavaScript, тогава е необходимо да се прилага документ за самоличност, много по-трудно е да се приложи това чрез класове.

Кога е най-доброто време за използване документ за самоличност, и когато клас?

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

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

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

Обръщам внимание на факта, че елементите

И сами по себе си нямат никакъв ефект върху други елементи на страницата.

Етикет

дефинира всеки отделен блок от съдържание и е предназначен да разделяне на уеб страница на фрагменти. Можете да комбинирате всеки набор от логически свързани елементи в един блок
.

Този елемент е блоков елемент, което означава, че съдържанието му винаги ще започва на нов ред, като елементът заема цялата налична ширина. Не толкова отдавна този елемент заемаше абсолютния връх, посветен на разделянето на страницата на логически компоненти, но с появата на HTML 5 бяха добавени достатъчно семантични елементи, които позволяват в някои ситуации да заменят маркера

към нещо по-смислено.

За разлика от блоков елемент

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

Етикет можете да използвате за задачи като:

  • Маркиране на част от текст с определен цвят, фон или дори фоново изображение.
  • Променете отделни думи или фрази в размер на шрифта, семейство шрифтове или тип шрифт.
  • Създайте различни стилове на форматиране за избраната част от текста.
  • Използване на езици за програмиране на скриптове за избрани текстови области, като подчертаване на синтаксиса на кода и т.н.

Поддръжка на браузър

Етикет
Опера

IExplorer

ръб, край
дададададада

Атрибути

Пример за употреба

</span>етикети <div>И <span>

Комбинирахме абзаците с div таг и това style="color:red">думаобвихме го с етикет span.

С помощта на вградения стилов лист маркирахме тази дума в червено и блокът от текст получи зелен цвят.

Имайте предвид, че тагът div е блоков таг, което означава, че съдържанието му винаги ще започва на нов ред, като елементът заема цялата налична ширина.

Този блок също съдържа два параграфа. Използвайки вградения лист със стилове, ние посочихме цвета на фона за целия блок като каки и за това style="background-color:oranged">думи orangeRed (увихме го в таг span).

В този пример ние:

  • блокови елементи
    създадено двеблокове, съдържащи два параграфа текст вътре (елементи

Оформлението с div блокове отдавна е стандарт и има редица предимства пред табличното оформление. В действителност обаче начинаещите разработчици се объркват в поведението на тези блокове.

Нека да разгледаме основните моменти в блоковото оформление. Сега няма да вземем предвид стандарта html5, а просто ще разгледаме основните основи на оформлението с div блокове, което се използва при създаване на оформление или някакъв вид отделен компонент на страница.

Какво се счита за блоков елемент?

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

.

И така, от просто към сложно. Нека да видим как ще бъдат изобразени divs по подразбиране, без каквото и да е оформяне, което да повлияе на позицията им. За по-голяма яснота ще добавим стилове към елементите в ред чрез атрибута style.

Блок 1

Блок 2

Блок 3

Нека добавим стойност за ширина за всеки блок:

Блок 1

Блок 2

Блок 3

Вижда се, че всеки блок, според спецификацията, е разположен на нов ред. Това е нормалното им поведение.

Сега възниква въпросът как да се подреди div блокове на един ред, едно след друго?

За да направите това, има свойство, което определя от коя страна блокът ще бъде принуден да се подравни. В същото време, от другия ръб, той може да бъде обвит от други елементи.

Свойството float има следните стойности:

  • ляво - блокът е подравнен вляво, обвива се отдясно
  • отдясно - блокът е подравнен вдясно, обвива наляво
  • none - обвиване не е зададено, блокът се държи по подразбиране, както в предишните примери.

Нека добавим float:left към нашите блокове, така че блоковете да се подравнят вляво:

Блок 1

Блок 2

Блок 3

В резултат на това блоковете се подредиха на една линия. Добре, да кажем, че искаме да добавим още един div в долната част и можем да направим това, без да посочваме свойството float:




Блок 1. Lorem ipsum dolor sit amet, consectetur adipisicing elit

Блок 2. Lorem ipsum dolor sit amet, consectetur adipisicing elit

Блок 3. Lorem ipsum dolor sit amet, consectetur adipisicing elit

Единица 4

Блок 1. Lorem ipsum dolor sit amet, consectetur adipisicing elit

Блок 2. Lorem ipsum dolor sit amet, consectetur adipisicing elit

Блок 3. Lorem ipsum dolor sit amet, consectetur adipisicing elit

Единица 4

защо стана така Накратко, това се случва, защото елементи с плаващи елементи изпадат от документния поток. Това обаче е тема за отделна статия. Тук ще се запознаем с ново свойство, което контролира поведението на плаващите елементи:

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

Нека добавим свойство clear:left към блок 4, което ще попречи на този елемент да се увие около други плаващи елементи от лявата страна.

Блок 1. Lorem ipsum dolor sit amet, consectetur adipisicing elit

Блок 2. Lorem ipsum dolor sit amet, consectetur adipisicing elit

Блок 3. Lorem ipsum dolor sit amet, consectetur adipisicing elit

Единица 4

Блок 1. Lorem ipsum dolor sit amet, consectetur adipisicing elit

Блок 2. Lorem ipsum dolor sit amet, consectetur adipisicing elit

Блок 3. Lorem ipsum dolor sit amet, consectetur adipisicing elit

Единица 4

Блок 4 се поставя на нов ред, както ни трябва.

В този случай знаем как са разположени другите блокове, така че в примера веднага посочихме ясно: ляво. Има ситуации, когато не знаем точно коя страна ще срещне плаващият блок, така че в такива случаи си струва да посочите clear:both, което отменя обвиването от двете страни. Сега разбрахме как да подредим div блокове на една и съща линия хоризонтално.

Имайте предвид, че плаващите блокове се поставят на една и съща линия, ако ширината на родителския елемент позволява. Ако блоковите елементи не се поберат в един ред, те ще се преместят на нов ред. Ако това е критично, например, когато оформяте оформления, трябва да вземете това предвид, а за блокове с float не забравяйте да зададете ширината - фиксирана (px) или гума (%, rem и т.н.). Нека да разгледаме тези ситуации.

Как да повлияем на блоковете, ако искаме да поставим тези блокове в центъра?

Класическото решение би било да добавите родител към блоковете и да използвате margin: 0 auto property;

Защо дадохме на самия родител класа .wrapper? "wrapper" в превод означава "обвивка". Обичайна практика е да се дефинира име на клас, когато елемент обгръща други блокове и по този начин им позволява да бъдат манипулирани/повлияни чрез промяна на самия родител.

Нека вземем маркирането от предишните примери и да го прецизираме.


Блок 1. Lorem ipsum dolor sit amet, consectetur adipisicing elit

Блок 2. Lorem ipsum dolor sit amet, consectetur adipisicing elit

Блок 3. Lorem ipsum dolor sit amet, consectetur adipisicing elit

Единица 4

Блок 1. Lorem ipsum dolor sit amet, consectetur adipisicing elit

Блок 2. Lorem ipsum dolor sit amet, consectetur adipisicing elit

Блок 3. Lorem ipsum dolor sit amet, consectetur adipisicing elit

Единица 4

Тук всичко изглежда просто.

И ако не ни харесва, че текстът се прилепва близо до ръба на родителския блок и искаме да добавим полета, без да правим промени в маркирането, само с помощта на css. Нека добавим свойството padding към елементите:

Блок 1. Лорем

Блок 2. Lorem ipsum

Блок 3. Lorem ipsum

Блок 4. Лорем

И виждаме, че оформлението ни се разпадна! Блок 3 отиде някъде. защо стана така Отговорът е лесен. Чрез добавяне на полета към елементите, ние увеличихме тяхната ширина. Сега стойностите са:

Блок 1: 10 + 200 + 10 = 220px

Блок 2: 10 + 150 + 10 = 170px

Блок 3: 10 + 100 + 10 = 120px

Блок 4: 10 + 450 + 10 = 470px

220 + 170 + 120 = 510 пиксела

Общата ширина на трите блока е 510, те не се вписват в ширината на родителя (450) и следователно се пренасят на нов ред.

Как да поправя? Можете да направите следното:

  1. Нулирайте стойностите на ширината за всеки блок, като вземете предвид полетата. Намаляване на размерите на блоковете. Всичко отново ще се побере спретнато в една линия. Съгласете се, неудобно ли е? Всеки път да се качвате в оформлението и да редактирате нещо.
  2. Използвайте свойство box-sizing: border-box. Така че изчислението се взема от общата ширина на блока. Съветвам ви да разберете какъв е блоковият модел на css.

Използваме втория вариант, оказва се така:


Блок 1. Лорем

Блок 2. Lorem ipsum

Блок 3. Lorem ipsum

Блок 4. Лорем

Блок 1. Лорем

Блок 2. Lorem ipsum

Блок 3. Lorem ipsum

Блок 4. Лорем

Сега нека съберем цялата получена информация заедно и се опитаме да създадем просто типично оформление с три колони с течно оформление, което ще се простира до максимум 900px, след което цялото оформление ще бъде позиционирано в центъра.

Създайте маркиране на оформлението:

документ

Хедър на сайта
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Odit rem fugit itaque, est impedit aperiam a autem repellat vitae porro ex expedita, cumque nulla, velit. Soluta velit eos, quia. Fugiat voluptates nisi aliquid eum sapiente sunt nobis, adipisci acceptenda earum!

Стилове на писане:

Тяло ( max-width: 900px; /* максимално ограничение на ширината */ margin: 0 auto; ) /* за всички кутии в тялото, променете алгоритъма за изчисляване на ширината на блока и добавете полета от 10px към всички полета */ body div ( -webkit -box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; padding: 10px;) .header (фон: #CCA69E; padding: 10px;) .left-sidebar (ширина: 20 %; фон: #8ED9B6; float: ляво; ) .content ( float: ляво; ширина: 60%; ) .дясна странична лента (ширина: 20%; фон: #FF9282; float: ляво; ) . долен колонтитул (фон: #000; изчистване: и двете; /* деактивиране на обвиването от двете страни, блокът се показва на нов ред */ цвят: #ccc; )

Ако нещо не е ясно, попитайте в коментарите.

Добър ден приятели! По някакъв начин в моите няколко урока по html говорих и използвах такава концепция като оформление на div.

Сигурно имате въпроси, особено ако сте начинаещи, какво е това?

В днешната статия ще разсея всичките ви съмнения и ще отговоря на въпроси за това какво съдържат блоковете div

Да започнем да учим.

HTML div блокове и оформление

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

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

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

Ето как сега можете да изобразите опростен модел за използване на div html блокове.

Удобството е в независимостта на блоковете един от друг, те са лесни за управление поотделно, преместете както искате, добавете стилове, можете да зададете общи стилове чрез CSS правила за няколко Div групи. Съгласете се, че е удобно.

Примери за използване на div тагове

Нека видим на практика няколко примера за това как можете да приложите div тагове върху html страница. Използвайки прост пример, ще създадем 4 блока на страница. Винаги ще използвам Notepad++ за този и следващите примери.

Така че нека обясним. Имаме дизайн < ! DOCTYPE html > той е подходящ за съвременни браузъри и поддържа HTML 5 маркиране, ще говорим за него в бъдещи версии.

След това се отваря голям "родителски" контейнер < html > . Чифт е, трябва да се затвори накрая! След това идва отварянето на сервизния етикет < head > , който също е сдвоен и съдържа служебна информация за кодирането < meta charset > , най-важното заглавие на seo страницата, описание (не го включих тук, защото няма нужда, анализираме чисто технически аспект), CSS стилове, шрифтове (Google Fonts библиотека), javascript също са включени тук.

Етикетът е следващият < body > . Той вече ще съхранява цялото ни маркиране на блокове и всички контейнери с тагове. Просто го запомнете като огромен "барел".

И накрая, има нашите отдели за контейнери.

< div class = "header" > < / div >

< div class = "sidebar" > < / div >

< div class = "content" > < / div >

< div class = "footer" > < / div >

важно! Те също са сдвоени, те също трябва да бъдат затворени заедно с други тагове.

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

Можете да зададете не само атрибута клас, но можете също да използвате id (идентификатор). Можете да зададете въпроса: „Каква разлика има за мен кой да използвам?“ Ще отговоря, можете да използвате всеки метод за оформление. С една единствена разлика – по приоритет документ за самоличностима повече привилегии от клас .

Ще обясня това във видео измамния лист по-долу.

Всеки има свой собствен стил на създаване на уебсайтове, аз обичам да използвам класа повече, защото този запис в CSS се показва с точка . селектор

Между другото, искам да кажа, че заглавката, страничната лента, съдържанието, долният колонтитул са всички CSS селектори и те вече ще имат атрибути.

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

Нека отворим правилата за нашата страница в тага head css, тоест нека я проектираме. Нека го направим така:

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

Пример за използване на div тагове

< ! DOCTYPE HTML >

< html >

< head >

< meta charset = "utf-8" >

< title >Пример за използване на div тагове< / title >

< / head >

< body >

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

. Повечето HTML документи започнаха да се изграждат на базата на отделни блокове, които, за разлика от табличното оформление, могат да бъдат независими един от друг.

Възникване

Усложняването на уеб страниците и развитието на компютърните технологии доведоха до факта, че уеб документът беше разделен на две части - рамка (HTML код) и дизайн (стилови листове). Благодарение на това беше възможно да се постигне безпрецедентно развитие на мрежата, резултатите от което вече можем да видим на повечето съвременни сайтове. В допълнение към подобряването на процеса на развитие

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

Стандарти и проверка

Етикет

в HTML се използва в строго съответствие със стандартите на W3C (World Wide Web Consortium). Кодът на страницата е проверен специален инструмент- валидатор, който анализира (сканира и търси) всякакви грешки на страницата. Валидна страница означава, че всички етикети са използвани правилно и са напълно съвместими със стандартите.

етикети

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

За да създадете наистина правилен документ, трябва да използвате следната структура на тагове

class="някое_име". Позовавайки се на името на класа, таблиците със стилове могат да определят позицията, размера, сумирането и други параметри на определен блок в документа.

Използване на класове и идентификатори

Блокирайте

HTML може да се дефинира както чрез идентификатора на идентификатора, като разликата между първия и втория е, че идентификаторът се използва само веднъж на страницата на документа. Тоест, използва се за дефиниране на уникални елементи, които не се повтарят никъде другаде в кода на страницата. Атрибутът class ви позволява да приложите същото към множество елементи. Този подход значително опростява разработката и поддръжката на кода. Освен това един обект може да има няколко класа едновременно. За правилно разпознаване те просто са разделени с интервали.

Естествено, блоковата структура на документа изобщо не предполага използването само на тагове.

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

Етикет
. HTML свойства

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

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

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

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

Блоково позициониране

Използването на атрибута position ви позволява да промените метода на позициониране на избрания елемент. И така, има три вида позициониране:

  • Статичен (статичен) - използва се по подразбиране. В този случай елементът се позиционира според позицията в HTML кода.
  • Относително. В този случай позицията на обекта се изчислява по същия начин, както в случай на статично позициониране, но това свойство ви позволява да промените позицията на дъщерните елементи.
  • Позицията му се изчислява спрямо елемента с относително позициониране.

Други атрибути

За да промените позицията спрямо началната точка, се използват горните и левите атрибути. Стойностите могат да бъдат положителни или отрицателни. Ширината и височината на блоков елемент се определят съответно от атрибутите за ширина и височина. Ако не са посочени в таблиците със стилове, тогава блокът ще заеме цялата ширина на родителския елемент. Ако съдържанието на блока не отговаря на цялата ширина на "родителя", тогава поведението на елемента се определя от атрибута overflow.

Надяваме се, че тази статия ви е помогнала да разберете какво е

в HTML.