Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
а бывают плохие и даже отвратительные, как спецификация ECMAScript
class Person {
public bool isOlderThan18 () {
return this.age > 18;
}
};
// и так в приложении:
if (person.isOlderThan18()) {
print 'может покупать выпивку';
} else {
print 'не может покупать выпивку';
}
class Person {
public bool isAdult () {
return this.age > 18;
}
};
isAdult" или "isOlderThan18". Так само, как всё-равно, назвать класс "left" или "toolbar". Реализация не изменится, изменится только имя, которое для парсера совершенно не имеет смысла, пусть я его даже назву "sex" или "kak-ya-zdez-trahalsa-s-ie". Но если у вас проблема придумать осмысленное название классу элемента, то проблема в том, что вы просто не понимаете сути того, что вы делаете.Все, вот как оно есть в макете — так оно останется навсегда.Наверное это справедливо только для очень маленьких простых сайтов.
допустимо назвать ту штуку слева «left»
допустимо назвать сайдбар «left»
Мне кажется, что этот момент в условиях веб-разработки во многом зависит от бюджета и сроков. Можно навертеть кучу предусмотренных возможностей, но они не будут укладываться в бюджет, вы сорвете сроки разработки и провалите проект.

основан не на SGML, а на XML, то есть представляет собой совершенно другой языкXML является подмножеством SGML.
Вообще, стандарт XHTML потребовался для того, чтобы использовать HTML-подобную разметку внутри XML-документов.Не совсем так, хотя для этого он тоже пригоден. Вы можете и так использовать HTML-разметку (с незакрытыми тэгами и незакавыченными атрибутами) внутри XML — завернув ее в секцию CDATA.
В XHTML существуют правила, например, запрет вложенности для тегов <a> и <p>, которые не могут быть выражены в терминах XML.А в терминах чистого XML такие вещи и не контролируются. XML должен быть well-formed. Всякие вещи типа вложенности тэгов, допустимости у их тех или иных атрибутов и т.д., т.е. все, что касается именно валидности, контролируются средствами проверки грамматики — типа DTD, XSD и RelaxNG.
Верстая левую колонку сайта, запрещается называть её #left, потому как на самом деле это не просто левая колонка, а тулбар
что в html-коде почти любой современной страницы можно наблюдать цепочки вида </div></div></div>. В количестве этих </div> очень даже легко ошибиться
особенно если на странице есть контент, отправленный рядовыми пользователями. Лишний или просто расположенный не там </div> может привести к развалу всей верстки
<div><div><div></div></div> <div><article><div></article></div> 
В xhtml же технически возможен (и с точки зрения XML даже валиден!) вот такой код:
текст ячейки текст между ячейками, отображайте где хотите
<xs:element name="tr">
<xs:complexType>
<xs:choice maxOccurs="unbounded">
<xs:element ref="th"/>
<xs:element ref="td"/>
</xs:choice>
<xs:attributeGroup ref="attrs"/>
<xs:attributeGroup ref="cellhalign"/>
<xs:attributeGroup ref="cellvalign"/>
</xs:complexType>
</xs:element>
Однако, подобное поведение — отказ от обработки всего документа при обнаружении любой ошибки — абсолютно неприемлемо для веба, где большую часть контента создают отнюдь не программы и даже не верстальщики, а сайт-менеджеры, писатели, блоггеры и, зачастую, рядовые посетители сайтов
Постоянные переключения синтаксиса в одном файле ни к чему хорошему не приводят, глаз программиста замыливается, и становятся возможными достаточно трудно вылавливаемые синтаксические ошибки.
XML-синтаксис «не пошел»… потому что он просто не применим к вебу, в 99% случаев не дает никаких плюшек, но при этом замусоривает код большим количеством цифрового шума и менее адекватен поставленной задаче, чем HTML.
Почему я должен спорить с вами об XML схемах? К вебу они не имеют ну совсем никакого отношения, и поэтому в моей статье про них ничего нет.
Вы предлагаете «вообще не использовать PHP» и «взять шаблонизатор», хотя PHP и есть в чистом виде шаблонизатор, прокладка между базой данных и веб-браузером.
Она, эта победа, как раз и одержана над такими как вы и TheShock. Пока семантисты и XML-исты занимались семь лет ерундой, технари своими силами решили проблему.
<b> и <i>:The b element now represents a span of text to be stylistically offset from the normal prose without conveying any extra importance, such as keywords in a document abstract, product names in a review, or other spans of text whose typical typographic presentation is emboldened.
The i element now represents a span of text in an alternate voice or mood, or otherwise offset from the normal prose, such as a taxonomic designation, a technical term, an idiomatic phrase from another language, a thought, a ship name, or some other prose whose typical typographic presentation is italicized. Usage varies widely by language.
col1 и col2 теперь желательно использовать использовать aside.<b> вместо <span class="vector"></span>. Потому что автор математических текстов всё-равно будет их вставлять специальной кнопкой. Зато если заказчик скажет: «анука сделай, чтобы все векторы были картинкой со стрелочкой» и если у вас нормальная верстка — написали кусок js-a и вуаля. А так — придётся перечитывать все тексты, где там <b> вставлено чтобы вектор выделить, а где чтобы слово акцентировать.
Однако, подобное поведение — отказ от обработки всего документа при обнаружении любой ошибки — абсолютно неприемлемо для веба, где большую часть контента создают отнюдь не программы и даже не верстальщики, а сайт-менеджеры, писатели, блоггеры и, зачастую, рядовые посетители сайтов.
В XHTML существуют правила, например, запрет вложенности для тегов <a> и <p>, которые не могут быть выражены в терминах XML.
Бывают, например, произведения классиков, в которых они используют курсив и полужирное начертание исключительно в художественных целях (то есть так, как им лично захотелось), или, может, в соответствии с устаревшими на данный момент правилами языка, или еще как-то не по правилам.
HTML5 как победа научного материализма