Jump to content

Оцените верстку макета


Raccoon
 Share

Recommended Posts

Всем привет. Прошу оценить мою первую верстку: http://continuum.besaba.com/

Обратите внимание на горизонтальные линии между пунктами меню футера: некоторые линии толще и это произвольно перекидывается на другие линии при масштабировании страницы.

Еще одна проблема: в сафари, хроме и опере верстка плывет при сильном уменьшении масштаба.

Буду рад получить как можно больше замечаний и советов от опытных верстальщиков.

Link to comment
Share on other sites

Беглым взглядом совсем жутких или нубских косяков не нашел.

 

Ну, разве что кнопки нужно делать кнопками, а не дивами. 

 

И еще тут непонятно, или косяк или так было задумано, но по-хорошему так не делают.

 

 

#recent,

#categories,
#pages,
#newsletter,
#subscribe,
#subscribe div span,
#columns2 ul li p,
#columns1 ul li p,
#navigation ul li {
font-family: Arial, serif;
}
Edited by advokatua
Link to comment
Share on other sites

1) Если указываете в доктайпе html5, то ссылку на файл стилей можно писать короче: <link href="..." rel="stylesheet">. Type не обязателен. При использовании тега <script> type тоже можно не указывать

2) Название сайта лучше поместить в <h1> вместо стерильного тега <span>

3) Основную навигацию необязательно заключать в тег <div id="navigation">, просто присвойте этот id списку (ul).

4) Аналогично и с <div id="columns1> и <div id="columns2">

5) Не советую указывать height для блоков с текстовым содержимым. Лучше заменить на min-height или же просто указать padding-top/padding-bottom

6) Очень намудрили с кнопками: отрицательные поля, зачем-то указано абсолютное позиционирование... Не совсем понял замысел. Это вы так хотели расположить блочные элементы горизонтально?

7) У четырех колонок в футере стилизация одинакова. Зачем заводить 4 разных id, когда можно обойтись одним?

8) специальный <div class="line"> который идет после каждого пункта меню во всех четырех колонках сильно перегружает html код. Лучше задать верхнее и нижнее подчеркивание элементам меню. Так линии наложатся друг на друга и создастся эффект объемности, которого хотел добиться дизайнер. При этом нужно отменить верхнее подчеркивание у первых пунктов через псевдокласс

9) зачем использовать везде id? Class я встретил только 1(!) раз на странице. Соотношение должно быть противоположным, имхо :)

Edited by Ludwig Voltman
  • Like 1
Link to comment
Share on other sites

 

Беглым взглядом совсем жутких или нубских косяков не нашел.

 

Ну, разве что кнопки нужно делать кнопками, а не дивами. 

 

И еще тут непонятно, или косяк или так было задумано, но по-хорошему так не делают.

 

 

#recent,

#categories,
#pages,
#newsletter,
#subscribe,
#subscribe div span,
#columns2 ul li p,
#columns1 ul li p,
#navigation ul li {
font-family: Arial, serif;
}

 

А как можно оптимально указать шрифт везде, где он используется? Каждый раз повторять везде будет лучшим вариантом?

Link to comment
Share on other sites

Да смысл не в оптимальности, а в том, что у вас сначала указан шрифт без засечек (Ариал), и если его в системе нет, то применяется шрифт с засечками, по типу Таймз. 

Объясните, пожалуйста, подробнее.

Link to comment
Share on other sites

Это 2 разных семейства шрифтов. Если вы первым указываете Arial, то и общее семейство остальных шрифтов должно быть подобным, т.е. sans-serif.

 

Ну, это как если вы предпочитаете пиво, приходите в бар и заказываете Балтику, а вам говорят, что его нет и предлагают Хайнекен, а вы говорите:"Та не, давай водки, и лимон". )

 

Короче говоря правильно вот так: font-family: Arial, sans-serif;

Если нужен шрифт с засечками, то как-то так: font-family: Times, serif;

Link to comment
Share on other sites

Это 2 разных семейства шрифтов. Если вы первым указываете Arial, то и общее семейство остальных шрифтов должно быть подобным, т.е. sans-serif.

 

Ну, это как если вы предпочитаете пиво, приходите в бар и заказываете Балтику, а вам говорят, что его нет и предлагают Хайнекен, а вы говорите:"Та не, давай водки, и лимон". )

 

Короче говоря правильно вот так: font-family: Arial, sans-serif;

Если нужен шрифт с засечками, то как-то так: font-family: Times, serif;

Наглядно и доступно - спасибо;)

Link to comment
Share on other sites

Да смысл не в оптимальности, а в том, что у вас сначала указан шрифт без засечек (Ариал), и если его в системе нет, то применяется шрифт с засечками, по типу Таймз. 

А, вот в чем дело) Действительно. По ошибке запутался и думал, что serif - это шрифт без засечек, а sans-serif - с засечками.

Edited by Raccoon
Link to comment
Share on other sites

1) Если указываете в доктайпе html5, то ссылку на файл стилей можно писать короче: <link href="..." rel="stylesheet">. Type не обязателен. При использовании тега <script> type тоже можно не указывать

2) Название сайта лучше поместить в <h1> вместо стерильного тега <span>

3) Основную навигацию необязательно заключать в тег <div id="navigation">, просто присвойте этот id списку (ul).

4) Аналогично и с <div id="columns1> и <div id="columns2">

5) Не советую указывать height для блоков с текстовым содержимым. Лучше заменить на min-height или же просто указать padding-top/padding-bottom

6) Очень намудрили с кнопками: отрицательные поля, зачем-то указано абсолютное позиционирование... Не совсем понял замысел. Это вы так хотели расположить блочные элементы горизонтально?

7) У четырех колонок в футере стилизация одинакова. Зачем заводить 4 разных id, когда можно обойтись одним?

8) специальный <div class="line"> который идет после каждого пункта меню во всех четырех колонках сильно перегружает html код. Лучше задать верхнее и нижнее подчеркивание элементам меню. Так линии наложатся друг на друга и создастся эффект объемности, которого хотел добиться дизайнер. При этом нужно отменить верхнее подчеркивание у первых пунктов через псевдокласс

9) зачем использовать везде id? Class я встретил только 1(!) раз на странице. Соотношение должно быть противоположным, имхо :)

Благодарю за подробные подсказки и советы. Учту и исправлю все. Оставлю комментарии\вопросы по некоторым пунктам:

6) Я до сих пор путаюсь и неуверенно работаю с позиционированием блочных элементов. Не всегда получается сделать так, как нужно, и причины непросто найти. Можете дать пример по позиционированию кнопок внутри блочного элемента?

8) За этот совет отдельное спасибо! Очень много времени потерял на реализацию этих подчеркиваний. Использую ваш совет.

9) Я просто не до конца понимаю смысл назначения класса для одного уникального элемента, если он будет использоваться один раз. Поэтому я задавал id, а не class. Проясните эту тему в моем случае, пожалуйста.

Link to comment
Share on other sites

Про горизонтальное позиционирование кнопок - тут все просто. Либо вы можете позиционировать их через float (задать float: left span'у перед кнопками, и кнопки обтекут его справа).

Правда возникнут сложности с вертикальным выравниванием, если элементы разной высоты. Поэтому я бы просто сделал div'ы-кнопки строчно-блочными (dispay: inline-block). Это очень удобно, т.к. элементы 1) будут выровнены по одной горизонтальной линии (baseline), независимо от высоты 2) строчно-блочным элементам можно будет задавать высоту и верхние рамки как блочным (что пригодится для кнопок). Правда сточно-блочные элементы не будут работать в IE6,7, но это решаемо (если я не ошибаюсь, в условных комментариях для этого браузера нужно прописать display: inline; zoom: 1;). Подробнее можете почитать в книге Влада Мержевича, очень сжато и по-существу.

По поводу классов и айди: разница между ними не очень большая. Id 1) имеют большую специфичность 2) используются для js-скриптов 3) могут встречаться только один раз на странице. В хорошей верстке (примеры Мейера, Макфарланда) id присваиваются основным контейнерам (header, footer, content etc.) и формам. Но многие вообще не используют id и присваивают только классы. Обычно так делают чтобы не мучиться со специфичностью и лимитом на одно использование элемента с id. В случае использование к-л ява-скрипта элемент с классом просто заменяется на элемент в id.

Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Similar Content

    • By Mondeus
      Доброго всем времени суток. Прошу помощи. Научите принципу изменения футера. Движок Xenforo. Версия 2.2.10. Стиль дефолтный. Что именно нужно в итоге на фото примере. Мой шаблон app.footer less имеет следующее значение. 
      .p-footer { .xf-publicFooter(); a { .xf-publicFooterLink(); } } .p-footer-inner { .m-pageWidth(); .m-pageInset(); padding-top: @xf-paddingMedium; padding-bottom: @xf-paddingLarge; } .p-footer-row { .m-clearFix(); margin-bottom: -@xf-paddingLarge; } .p-footer-row-main { float: left; margin-bottom: @xf-paddingLarge; } .p-footer-row-opposite { float: right; margin-bottom: @xf-paddingLarge; } .p-footer-linkList { .m-listPlain(); .m-clearFix(); > li { float: left; margin-right: .5em; &:last-child { margin-right: 0; } a { padding: 2px 4px; border-radius: @xf-borderRadiusSmall; &:hover { text-decoration: none; background-color: fade(@xf-publicFooterLink--color, 10%); } } } } .p-footer-rssLink { > span { position: relative; top: -1px; display: inline-block; width: 1.44em; height: 1.44em; line-height: 1.44em; text-align: center; font-size: .8em; background-color: #4682B4; border-radius: 2px; } .fa-rss { color: white; } } .p-footer-copyright { margin-top: @xf-elementSpacer; text-align: center; font-size: @xf-fontSizeSmallest; } .p-footer-debug { margin-top: @xf-paddingLarge; text-align: right; font-size: @xf-fontSizeSmallest; .pairs > dt { color: inherit; } } @media (max-width: @xf-responsiveMedium) { .p-footer-row-main, .p-footer-row-opposite { float: none; } .p-footer-copyright { text-align: left; padding: 0 4px; // aligns with other links } }  

    • By zeiger2
      Здравствуйте! У меня стоит задача, что при наведении на блок li строка должна поменять цвет, в том числе и картинка. Я меняю картинку с помощью 
      background-image: none;     background: url(../img/check_icon_red.png) left no-repeat;   Но теперь картинка позицианируется не там где должна, её можно поставить на место только вручную, через -100px. Нужно поставить ровно туда, где она была. Должна быть в одном ряду с другими
    • By Seadjus
      Добрый день!
      Огромная просьба камнями не кидаться!
      Начал изучать JS , пока нет особых продвижений в изучении.
      помогите оптимизировать игру в пары. по условиям задания необходимо реализовать игру в пары с таймером, выбором количества карт .
      Ниже
      https://codepen.io/Seadjus/pen/VwVedaP
    • By Mix9
      есть див с 5 img, при уменьшении экрана див выходит за него. Я добавил overflow: auto для этого div в надежде на то, что я смогу прокручивать фотки с помощью скроллбара, однако даже с ним почему-то я не вижу часть фоток которые вышли за границу. Что с этим можно сделать? класс video повторяется 5 раз, я тут оставил только 1 
      .content{ width: 90%; background-color: #333; } .video{ margin: 0px 4px 0px 4px; width: 310; display: flex; flex-direction:column; } .video_button_text{ margin-top: 10px; display: flex; flex-direction: row; font-size: 20px; color: white; } .video_text_div{ display: inline-block; width: 250px; } .video_text{ text-align: justify-all; margin: 0px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; } .slidan_videos{ margin: 0px 10px 0px 20px; overflow: auto; width: auto; margin-bottom: 50px; display: flex; flex-direction: row; justify-content: space-around; } <div class="content"> <div class = slidan_videos> <div class = video> <div> <a href = 'ссылка'><img class="img" src=""картинка"></a> </div> <div class = video_button_text> <div class = avatarka_div> <a href="ссылка" target="_blank"><img class = avatarka src="картинка"></a> </div> <div class = video_text_div> <p class = video_text><a href="ссылка">текст</a></p> </div> </div> </div>
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy