Соглашение по верстке

Кроссбраузерность

Internet Explorer 9.0+
Chrome последние два
Opera последние два
Firefox последние два
Safari 8+
Android 4.0+
iOS 8.0+

Нотация

Использование БЭМ нотации

Использование стилей

Не вешать стили на ID.

Не использовать inline style.

Названия классов и id должны по смыслу соответствовать применению (например, newsItem, topMenu)

Отступы

Использование отступов (табуляции) для вложенных блоков в html.

Использование Javascript

Все что можно сделать без Javascript, делать без него.

Семантические правила для css

CSS файл должен быть разбит с помощью строк с комментариями на блоки по функциональному назначению, например:

/* ___________1. Сброс CSS_____________________*/
/* ___________2. Типовые элементы______________*/
/* _______________2.1. Залоговки_______________*/
/* _______________2.2. Ссылки__________________*/
/* _______________2.3. Элементы форм___________*/
/*___________3. HEADER (Шапка сайта) __________*/
/*___________4. FOOTER (Подвал )_______________*/
/*___________5. SIDEBAR (Справа)_______________*/

Кодировка

Кодировка UTF-8

Семантические правила для html

Блочная вёрстка (табличную вёрстку можно использовать только для таблиц)

Оптимизация

Использование CSS спрайтов. Если нет возможности какие-либо небольшие элементы (иконки) запихнуть в спрайт, кодировать их с помощью Base64.

При использовании сторонних модулей необходимо удалять неиспользуемый код. (Например, при использовании бутстрапа если не используются тултипы, то удалить их)