Большинство запросов на рецензию верстки, в разделе Обсуждение работ, в результате имеют одни и теже ответы. Более 90% будущих разработчиков на начальном этапе допускают одни и теже ошибки.
Типичные ошибки
Запрещено имя класса начинать с цифры, или с дефица после которого следует цифра (пруфлинк: engрус)
Рекомендации
Ниже я привожу список самых распространенных ошибок.
CSS
Не использовать #id для описания стилей блока.
Почему-то одна из самых часто встречаемых ошибок -- это использование идентификатора вместо класса, для описания силей блока. Не надо этого делать.
Давай мы с тобой определимся раз и на всегда с двумя простыми решениями: .class-name -- имена класов используются для того что бы описать стили блока. В 99,9% случаев программист не будет менять установленные верстальщиком имена классов. #id -- идентификаторы используются в JavaScript для того что бы передать в скрипт элемент и использовать его. Программист имеет право изменять имя идентификатора на своё усмотрение.
Возьми за правило не использовать в вёрстке #id. В 99,9% случаев ты сможешь обойтись классами. 0,01% остаётся на уникальные ситуации и вероятность того что тебе такая попадётся, сам понимаешь, очень мала.
Давай человеко-понятные имена классам.
Когда ты именуешь какой либо класс придерживайся простых рекомендаций:
класс должен быть набран латиницей
правильно: ".block-reviews"
не правильно: ".блок-отзывы"
имя класса должно объяснять для чего данный элемент
правильно: ".link-checkout"
не правильно: ".link-highlight"
используй переводчик для поиска англоязычных терминов
правильно: ".discount-coupon"
не правильно: ".kupon-skidki"
не используй сокращений. Пускай имя класса будет длинее, зато его можно прочитать
правильно: ".available.in-stock", ".block-shopping-cart"
не правильно: ".avail.instk", ".blk-shopCart"
не начинай классы с цыфры
не правильно: ".7-element"
не создавай индексированные классы. Для уточнения конкретного блока используй термины.
правильно: ".comment", ".comment.first", ".comment.last", ".comment.highlight"
не правильно: ".comment-1", ".comment-2", ... , ".comment-N"
так же данный вопрос детальнее раскрыт в этом посте
не используй верхний регистр в именах классов, не используй "camelCase"
правильно: ".block-layered-navigation"
не правильно: ".blockLayeredNavigation" здесь я рассказываю почему не стоит использовать "camelCase". Там же присутвует альтернативная точка зрения.
Не описывай стили внутри аттрибута style="". Все стили, за некоторыми редкими исключениями, которые касаются элемента должны быть описаны в CSS файле.
Давать всем элементам в коде уникальные имена классов(для непосредственного описания стилей каждого элемента на странице) избыточно. Но, если тебе попался сложный проэкт, который требует такого похода, то рекомендую перед тем как приступить к работе ознакомится с методологией БЭМ и понять как, в данном случае, правильно именовать классы.
не указывай размеры картинок в стилях, для этого есть атрибуты тега <img>
HTML
Не используй комментарии в коде (<!-- comment -->). Лучше написать чистый код и дать ему человеко-понятные классы, нежели плодить комментарии, тем более на русском языке.
Не надо везде где попало использовать тег <p> -- используй <div> или <span>. Тег <p> определяет текстовый абзац, а не часть разметки.
Использование тега <nav> -- если тебе надо создать одноуровневое меню, то вместо иерархии "nav>ul>li>a" достаточно (и правильнее) использовать "nav>a"
Логотип и тег <h1>. Начну с того что по умолчанию не обязательно помещать логотип в заголовок. Единственное где это уместно -- на страницах без заголовка, на пример -- "Главная страница". Такие страницы, как правило не имеют заголовка и содержат только промо контент.
Но надо учесть что данный вопрос, все таки, по части SEO, т.е. -- индивидуален для каждого сайта.
Приёмы
Если надо вывести список данных с маркером, не надо генерировать маркер на стороне сервера. Вместо того что бы выводить:
<li>- Возможность уточнять вопрос;</li><li>- Моментальная публикация;</li><li>- Гарантия получения ответа;</li>
Методологиея БЭМ -- была разработана в Яндексе. Саму методологию в полном объеме использовать есть смысл на высоконагруженных проектах с большим трафиком, но из неё можно подчерпнуть массу ценной информации и использовать в проектах средней и низкой сложности. Рекомендую ознакомится.
You can post now and register later.
If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.
Здравствуйте, подскажите какой тег использовать для увеличения значения, пример на картинке.
Вроде, про такой тег я слышала. Если есть тег прогресс бар, значит и такое должно быть.
Question
klierik
Большинство запросов на рецензию верстки, в разделе Обсуждение работ, в результате имеют одни и теже ответы. Более 90% будущих разработчиков на начальном этапе допускают одни и теже ошибки.
Типичные ошибки
Рекомендации
Ниже я привожу список самых распространенных ошибок.
CSS
Почему-то одна из самых часто встречаемых ошибок -- это использование идентификатора вместо класса, для описания силей блока. Не надо этого делать.
Давай мы с тобой определимся раз и на всегда с двумя простыми решениями:
.class-name -- имена класов используются для того что бы описать стили блока. В 99,9% случаев программист не будет менять установленные верстальщиком имена классов.
#id -- идентификаторы используются в JavaScript для того что бы передать в скрипт элемент и использовать его. Программист имеет право изменять имя идентификатора на своё усмотрение.
Возьми за правило не использовать в вёрстке #id. В 99,9% случаев ты сможешь обойтись классами. 0,01% остаётся на уникальные ситуации и вероятность того что тебе такая попадётся, сам понимаешь, очень мала.
Когда ты именуешь какой либо класс придерживайся простых рекомендаций:
правильно: ".block-reviews"
не правильно: ".блок-отзывы"
правильно: ".link-checkout"
не правильно: ".link-highlight"
правильно: ".discount-coupon"
не правильно: ".kupon-skidki"
правильно: ".available.in-stock", ".block-shopping-cart"
не правильно: ".avail.instk", ".blk-shopCart"
не правильно: ".7-element"
правильно: ".comment", ".comment.first", ".comment.last", ".comment.highlight"
не правильно: ".comment-1", ".comment-2", ... , ".comment-N"
так же данный вопрос детальнее раскрыт в этом посте
правильно: ".block-layered-navigation"
не правильно: ".blockLayeredNavigation"
здесь я рассказываю почему не стоит использовать "camelCase". Там же присутвует альтернативная точка зрения.
HTML
Но надо учесть что данный вопрос, все таки, по части SEO, т.е. -- индивидуален для каждого сайта.
Приёмы
Если надо вывести список данных с маркером, не надо генерировать маркер на стороне сервера. Вместо того что бы выводить:
лучше использовать псевдо-элементы. Например:
На заметку
Ресурсы, на которые стоит обратить внимание
Его канал на youtube: http://www.youtube.com/user/ArtSorax
Его группа с vk: https://vk.com/soraxcss
Системы контроля версий:
git http://githowto.com/ , svn http://svnhowto.com/ , mercurial http://mkharitonov.net/hg/help/ru/
http://webfont.ru/ -- шикарный проект со шрифтами от товарища Softlink
Методологиея БЭМ -- была разработана в Яндексе. Саму методологию в полном объеме использовать есть смысл на высоконагруженных проектах с большим трафиком, но из неё можно подчерпнуть массу ценной информации и использовать в проектах средней и низкой сложности. Рекомендую ознакомится.
Ресурсы, которые не рекомендуются для обучения
http://2develop.ru/videokurs - видео курсы от Дмитрия Валака
http://srs.myrusakov.ru/list
Придерживаться или нет данных рекомендаций ложится на плечи разработчика.
Если есть чем дополнить - предлагайте, так как список не окончен.
Edited by klierikLink to comment
Share on other sites
Top Posters For This Question
23
10
13
8
Popular Days
Jan 14
21
Jan 3
13
Jan 15
12
Feb 2
9
Top Posters For This Question
klierik 23 posts
cyklop77 10 posts
lexxcode 13 posts
Zverushka 8 posts
Popular Days
Jan 14 2014
21 posts
Jan 3 2015
13 posts
Jan 15 2014
12 posts
Feb 2 2014
9 posts
Popular Posts
klierik
Большинство запросов на рецензию верстки, в разделе Обсуждение работ, в результате имеют одни и теже ответы. Более 90% будущих разработчиков на начальном этапе допускают одни и теже ошибки. Типич
lexxcode
http://www.w3.org/TR/CSS2/visuren.html#dis-pos-flo If 'display' has the value 'none', then 'position' and 'float' do not apply. In this case, the element generates no box. Otherwise, if 'position' has
lexxcode
бывают ситуации когда position меняется динамически, и дабы не запариваться с лишним свойством, прописывают display:block. Да оно в некоторых ситуациях избыточно, но собственно и не мешает никому. Как
156 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.