Колко важни са специфичните за оформлението семантични html елементи?

Има няколко етикета, които не правят нищо различно от елемент div, но са „необходими“ за създаване на семантичен HTML документ. Въпросът ми е колко важно е това?

Съгласен съм с важността на използването на списъци за показване на неща като продуктови списъци или менюта. strong таг, за да направите нещо да изглежда по-важно или да използвате mark таг за подчертаване (намерени) ключови думи. Само не знам какви предимства имат алтернативните елементи div, като

  • section
  • aside
  • footer
  • header
  • article
  • и т.н...

Какви са последствията, когато не правите правилно тази семантика на „оформлението“? Четох, че има положително влияние върху електронните четци и за незрящите хора. Но когато използвам програма като Dolphin Supernova, за да тествам дали сайтовете, които съм създал, са използваема за слепи хора. Не виждам никаква разлика между страница, която има „правилно“ семантично маркиране и версията, в която замених всички елементи на оформлението с елемента div по подразбиране. И така, защо тези елементи на оформлението са важни. Какви сапредимстватакогато ги използвате правилно. И кого/какво ще засегнете, когато не ги използвате правилно.


person user007    schedule 23.04.2015    source източник
comment
Семантичният HTML има своите предимства в SEO, освен че е просто интуитивен   -  person Sandeep Nayak    schedule 23.04.2015
comment
И така, вие сте съгласни, че <ul> е удобно, но не желаете да го разширите до <aside> или <footer>...? Можеш да замениш всичко с <span class="..">, разбираш ли? Съжалявам, но не мога да разбера това разсъждение.   -  person deceze♦    schedule 23.04.2015
comment
Не е нужно да ги използвате. Просто е силно препоръчително поради много причини, най-важните са фактът, че вашият код ще бъде много лесен за четене (ефективен при големи проекти) и ще спазва стандартите на W3C (което е хубав плюс).   -  person ovesco    schedule 24.04.2015
comment
Харесва ми да използвам тези семантични html елементи, защото това прави кода ми по-лесен за четене. Но когато имам списък с менюта, не виждам защо писането на <ul> в (ненужен) навигационен елемент е по-добро.   -  person user007    schedule 24.04.2015


Отговори (1)


Трябва да мислите за това от гледна точка на разделянето на семантиката (смисъл) от представянето (дизайн). Можете да създадете ужасна, разхвърляна HTML супа, като използвате само <span> елемента, но можете да направите това да изглежда наистина красиво. Представянето ще бъде добре, но семантиката на изходния код ще бъде ужасна.

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

Може също да сте просто вие, опитвайки се ефективно да поддържате и разширявате собствения си код с течение на времето.

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

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

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

Може би като по-осезаем пример: браузърът Opera имаше (има?) експериментална функция, в която показва допълнителна лента под адресната лента, която съдържа бутони за навигиране на страницата, на която се намирате; като го използвате, можете бързо да преминете към най-горната страница, следващата страница, индексна страница и т.н. За да работи това, браузърът очевидно трябва да знае коя е "горната" или "следващата" страница. Това е невъзможно да се разбере без стандарти. Вижте тук за допълнително обяснение.

person deceze♦    schedule 24.04.2015