Два вопроса про качественный в кавычках CSS

Бывает так, что день, в том числе и рабочий, начинается вполне удачно, бывает же такое, что буквально первые шаги вхожнения в рабочий процесс ошарашивают. Вроде ничего такого не произошло, а картина мира как-то в дребезги разбивается просто. На этот раз какие-то неувязочки с нашим новым заотлантическим арт-директором. Получаю от ихнего руководства два письма. И сижу думаю, что бы эдакое в ответ написать, дабы и меня попустило, и ситуация прояснилась для обоих сторон. А с другой стороны – может, и правда это у меня пробелы в знаниях? Похоже, будет сегодня пара вопросов по “профессиональной” вёрстке. Пока в кавычках – но это потому, что я не совсем понимаю, что у нас просиходит.

Предыстория такая. Наши украинские дизайнеры (типа младшая группа) рисовала много эскизов “в туда”, часть из них проходила, и мы делали по этим эскизам небольшие сайты. При старом арт-директоре были, конечно, расстраивающие недопонимания, плохо была налажена обратная связь, переписка в основном состояла в том, что я ему писала “дайте же наконец хоть какие-то комментарии”, в мессенджере пинала, мол прочти письмо и ответь, получала ответ, что ASAP, и всё, дальше молчание. К вёрстке у нас каких-то конкретных требований не было, кроме как бы и так понятных – валидный HTML, валидный CSS, никаких табличных макетов (это, кстати, по поводу дискуссии про то, что лучше, это другие могут выбирать то или другое или даже дискутировать, а у нас, помимо идеологии и принципов, так было заявлено в ТЗ), по возможности текст делать текстом (ну, если уж совсем декоративные заголовки, то хидерами-подменками с длинными координатами).

Причём все эти месяцы я слышала (и получала известиями в мессенджере) информацию о том, что нам будут высланы какие-то технические требования к макетам, которые мы должны соблюдать. Я периодически напоминала, получала ответ о том, что “да-да, готовится”, а потом первого арт директора уволили и взяли второго, с которым мы общаемся уже скоро месяц как (третью неделю, вроде, или четвёртую). И всё по-новой: мы готовим вам документ с техническими требованиями к верстаемым сайтам, и этот документ будет выслан ASAP. Как в, разумные мои читатели, и сами понимаете, этот документ уважаемые наши заатлантические партнёры так и не прислали, и я даже сомневаюсь в том, что они его досочиняли, и вообще у них в голове есть какая-то типизированная схема, по которой эти требования можно составить.

Бр-р-р опять много букв на вступление, а теперь вопросы:

1. В коротком письме, отосланном (вчера вечером по их канадскому времени или сегодня ночью по нашему) этим вторым арт-директором, было отчаянное требование ОСТАВЛЯТЬ В ОТПРАВЛЯЕМЫХ ОБРАТНО .PSD ДОКУМЕНТАХ СЛАЙСЫ. Опс. Какие слайсы? Это в том смысле, что наши верстальщики не должны были учиться вменяемой вёрстке, а должны были тупо резать скетчи в Image Ready? Вот здесь вопрос. Может я чего-то не знаю про слайсы и удобные инструменты для автопорезки? Последний Image Ready – может, я про него чего-то не знаю? Насколько мне известно, даже в самом настроенном случае, в самом правильном этот красавец генерит либо (очень аккуратную) табличную вёрстку (с RollOver`ами, с готовым скриптом) или же CSS разметку макета с абсолютным позиционированием. Т.е. если его и пользовать как-то, то, получается, только для быстрой порезки фоновых картинок. Может, и правда имеется ввиду быстрая нарезка фончиков, но вдруг нет, вдруг есть какие-то продвинутые инструменты для работы со слайсами? А я отстала от жизни со своей недешёвой ручной работой?

2. Второе письмо зацепило ещё больше. Содержало обиду на то, что этот самый второй арт-директор жалуется на вёрстку в одном из последних сайтов, якобы на то, что кнопка “Download Now почему-то оказалась бэкграундом“. Ну понятно, что по аналогии с предыдущими макетами “Download Now” – это не кнопка, а ссылка (a href), и ведёт она куда надо, и стоит правильно, а вот то, что она такая красненькая декоративная – да, картинка и в самом деле подгружается в таблице стилей для класса ссылки. Потому что фончик у этой ссылки-псевдокнопки – это элемент декора, а не функциональный объект, и вполне логично вынести картинку для фончика в css. Я же так понимаю, что наш этот (второй) арт-директор искал в хрефе именно img src=”" mce_src=”", т.е. объект-картинку, расположенную в объекте-ссылке, которая ведёт на страницу Download. Т.е. в его картине мира такая модель является правильной, а реализованная нами – не верной настолько, что он ПЕРЕВЁРСТЫВАЛ! Ну ладно, я не против, но уж если мы говорим о качественной профессиональной вёрстке, то каким-то образом нужно выяснить, какое решение будет правильным. И почему (по словам нашего партнёра) арт-директор был возмущён нашим решением? Т.е. не просто отметил, как альтернативное, но по каким-то причинам не подходящее, а именно ВОЗМУТИЛСЯ и пожаловался начальству на качество кода украинских верстальщиков?Причём мы-то как раз не против, ежели это есть часть конкретных технических требований (которое мы, как я выше писала, не получали и на словах даже не обсуждали), трудности я не вижу никакой (более того, вообще не понятна проблема с “перевёрстыванием”, посмотрела я последний код, если уж так понадобился в вёрстке тег img, то в его src просто вставляется тот же адрес, который в пути к фону в классе для ссылки, там же всё ясно). Но так ли уж правомерен упрёк именно в недостаточной качественности кода? Это довольно принципиальный вопрос, потому что больше всего в партнёрстве на сегодняшний день расстраивает именно грузилово с упрёками в непрофессионализме — и тут же доступ к работам канадских “профессионалов”, от “качества” которого мы просто теряемся. Как в случае скетчей (у нас “не проходят” очень неплохие работы, очень, но тут же присылаются на вёрстку скетчи, отрисованные канадскими дизайнерами, и мы тихо млеем: совершенно отвратительные скетчи в стиле 90-х годов прошлого века у хомпейджей на narod.ru выглядели зачастую пристойнее, а вёрстка – это просто песня, и я писала уже о качестве ихней вёрстки даже в этом блоге). У нас разное понимание того, что такое качество, и что такое профессиональная вёрстка, это уже ясно. Единственный способ – преодолеть на сегодняшнем митинге (собрание по громкой связи по телефону с их гоп-компанией) желание рассвирепеть и поругаться и попытаться, как бы это выразиться… обсудить конструктивно, обменяться технологическими процессами и знаниями для взаимной пользы и выработать (с обоих сторон) новые правила и критерии качества.

Нет, но пример с псевдокнопкой всё равно следует обсудить здесь, для начала.

RSS feed | Trackback URI

34 Comments »

Comment by netklon
2008-04-16 14:54:31

Если этот арт-директор считает, что эта графика обязательно должна быть прописана через img – пусть придумает alt-текст для нее. Аргументировать можно просто: если нет аттрибута alt – HTML невалиден, если alt-текст есть, но пуст, это кажется плохо для SEO.

Comment by nundesign
2008-04-16 15:38:09

Нет проблем с альтами. Была формальная постановка делать валидную профессиональную вёрстку, и выносить всю графику в css.
Здесь вопрос в том, как вернее с точки зрения “профессиональной вёрстки”:
Кнопка Download делается линком. Так вот оформление этой кнопки (красивый фончик и декорированная надпись Download) должно быть:
1. в CSS фоном для класса этого a href`a или
2. тегом img (эта картинка) в этом a href`e
?

Comment by netklon
2008-04-17 12:13:10

Я не зря привел пример с alt-текстом. Это и есть критерий.

Если можно придумать вменяемый alt-текст – значит реализовано должно быть через img. Если нет – значит CSS фон.

Касательно примера с кнопкой Download – однозначно img, потому что alt текст для него придумывается в полтакта. А вот если не придумывается иного alt-текста чем “Правый верхний закругленный угол” – значит фон через CSS.

Comment by nundesign
2008-04-17 12:14:26

Это обоснованно. Принимается.

 
Comment by Zigzag
2008-04-19 13:35:55

alt может присутствовать с пустым значением, так что это не аргумент. мне вообще непонятна ваша логика.

Comment by nundesign
2008-04-19 22:41:26

Я в таких ситуациях иногда (для проверки) представляю себе вот что: а имело бы смысл, чтобы эта картинка, к примеру, появилась в результатах поиска в имиджах в, скажем, гугле?
Если это лого компании, то – да, можно поставить имидж как объект в документ, логично.
Если это иллюстрация коробки для коробочного решения на рекламном сайте – тоже вроде да.
А если это кнопка “Download Now!” – то как бы скорее нет. Т.е. будет использоваться там Input (type=”button/image или что-то ещё”) или a href – визуал, оформление этого объекта всё равно должен быть вынесен отдельно.
Но в нашем случае выяснили, что есть такое требование. Будет линк, в котором будет имидж. С альтом “Download Now”.

Comment by Leo
2008-05-06 15:25:29

Вообще, на мой взгляд, логичнее всего делать все текстовые элементы именно текстом. С тем, чтобы при отключённом CSS вёрстка выглядела совершенно логичной.
В том числе и логотип можно ставить текстом. А изображение логотипа – фоновым изображением. Потому как всё-таки HTML-документ является в первую очередь текстом. И уже во вторую – оформлением этого самого текста.

 
 
Comment by Anton Naumov
2008-04-20 02:17:23

мне очень жаль Вас разочаровывать, но alt не может присутствовать с пустым значением. то, что пустое значения альта допустимо при валидации XHTML есть не более чем промашка разработчиков валидатора.
почему именно так хорошо написано в спецификации. и прекрасно иллюстрируется, если зайти на сайт например Linx.

Comment by Zigzag
2008-05-03 08:26:23

“Do not specify irrelevant alternate text when including images intended to format a page, for instance, alt=”red ball” would be inappropriate for an image that adds a red ball for decorating a heading or paragraph. In such cases, the alternate text should be the empty string (”").”

http://www.w3.org/TR/html401/struct/objects.html#h-13.8

 
 
 
 
 
 
Comment by hemule
2008-04-16 19:59:41

Обсуждение деталей типа: должен ли там где-то быть src или href или что-то еще заранее обречено на провал, я бы даже не затевал, а сосредоточился именно на “конструктивно, обменяться технологическими процессами и знаниями для взаимной пользы и выработать (с обоих сторон) новые правила и критерии качества.”, а в основном – на общих причинах – почему надо делать по-другому и почему это важно.

А спорить про “рюшечки” (прошу прощения, что уничижительно) – это очень “богатая” по потенциальным затратам времени тема, но совершенно непродуктивная.

Comment by nundesign
2008-04-16 20:20:52

Угу, на завтра уже назначили совещание по громкой связи. Но это завтра. А вчера канадское руководство уже выслушивало громкие крики о том, какие украинские верстальщики лохи, за ними перевёрстывать придётся. Хоть это и не справедливо, но руководство-то лишний раз негатив на нас уже получило.

 
 
Comment by Anwerso
2008-04-16 21:00:06

Про слайсы ничего сказать не могу, а вот насчет ссылки я полностью согласен с вашими верстальщиками. Тегом img должны вставляться только изображения в их изначальном понимании, а ссылка которую дизайнер захотел сделать в виде кнопки должна остаться ссылкой и все оформление уйти в css. Я конечно говорю про идеальную верстку в вакууме, но чтобы намеренно использовать семантически неверную конструкцию — тут нужны довольно веские причины (я даже не могу придумать ничего подходящего). Интересно будет услышать аргументацию канадского арт-директора.

Comment by nundesign
2008-04-17 10:56:01

Ура! Вы поняли о чём я написала! Очень приятно познакомиться.
Да, кажется (я предполагаю), что у них там в механизме заложена привычная (хоть и давно уже разработанная) модель – они прописывают идентификаторы, которые ловятся для статистики, в картинку, которая находится в ссылке. Я лично не вижу никакой проблемы в том, что бы прописывать этот идентификатор в хреф. Но может там есть какие-то ещё особенности, кроме консервативности модели дальнейшей интеграции сайта в систему, не знаю.
Сегодня вроде должны узнать.

 
 
Comment by Cooluck
2008-04-16 22:27:21

Танюш, почему б тебе не открыть свою компанию? Или не выйти на рынок рабочей силы и выбрать адекватного работодателя?

Comment by Anton Naumov
2008-04-17 01:19:27

прекрасный совет. я просто млею от таких советов. а бумажную работу и финансовую отчетность Вы на себя возьмете? если да, то может быть Вам нужен в соучредители Java Developer?

Comment by Cooluck
2008-04-17 01:39:32

Я почему-то верю в Таню и думаю, что в её круге общения может найтись хороший партнёр. Бухгалтеров хватит на всех.

Comment by nundesign
2008-04-17 10:58:11

У меня нет проблем с тем, чтобы найти бухгалтера. Но менять свою жизнь, свою карму – это, Рома, не хухры мухры. Я стремлюсь к этому, многое меняется, да, но если честно – мешает единственная вещь. Неуверенность в себе. И ужасный страх перед всем. Есть такая беда. Но я честно работаю над собой и надеюсь, рано или поздно научусь верить в себя и ставить перед собой более смелые цели :) в том числе и в бизнесе.

Comment by Cooluck
2008-04-17 13:00:40

Знаю, Танюш ;)
Лучше рано, помни, что есть люди, которые в тебя верят и будут готовы помочь. И это не только я. Подумай сколько лет ты ещё сможешь терпеть такие несостыковки с “их” стороной?

Comment by nundesign
2008-04-17 13:06:36

Тут нет ничего такого, что надо было бы терпеть, превозмогая себя :) Это ведь не война, не болезни, не цунами и не ледниковый период. Пока что – только проблемы с коммуникациями, в том числе и с языковым барьером. Как психологически, так и по уровню знания английского мне бы ещё потренироваться на канадцах не мешало бы :) :):)

 
 
 
 
 
 
Comment by Anton Naumov
2008-04-17 01:23:08

Таня, может быть конечно я чего-то не знаю, может быть конечно где-то чего-то недопоинмаю, но не кажется ли тебе, что картинки фоном в CSS — это крайняя мера? вот если по-другому никак — тогда да, тогда там. а до тех пор все-таки img? я буду благодарен за аргументированное опровержение, все-таки я не верстальщик. но как по мне, все-таки если в верстке присутсвует графика, то логичнее ее поместитть явно. потому что уже не раз и не два я тратил кучу времени на поиск картинок, и обнаруживал их в CSS. это не прозрачно. ну как минимум. я чего-то не понимаю?

Comment by nundesign
2008-04-17 10:53:05

Да, в данном случае и конфликтная ситуация возникла от того, что надо было поправить мелочь, а этому арт-директору было “не так прозрачно ясно”, что картинка прописана фоном в таблице стилей. Он её не нашёл в коде документа, а в css искать не догадался – это не вписывается в его картину мира :)

Ок, сек. Итак. Мы отделяем представление документа от его логики. Функциональный элемент в документе – это ссылка, которая ведёт (в данном случае) на страницу Download. Это могла бы быть и кнопка, ситуации это не меняет – я переопределяю свободно визуальное отображение кнопки любого типа, так же как и визуальное отображение ссылки в CSS. В данном случае визуальное представление кнопки – это миленькая картинка с красненьким градиентиком и красиво написанным словом *Download*. Но это – всего лишь представление объекта *ссылка*. Сама картинка не является функциональным элементом, она всего лишь привлекает внимание пользователя и своим внешним видом намекает на то, что “там надо кликнуть”.
Всё, что относится к внешнему виду документа, выносится в таблицу стилей. Поэтому в коде документа остаётся тег, который реализовывает заданную функциональность (a href), а в таблице стилей – представление, внешний вид этой ссылки.

Хотя на самом деле нам всё равно :) и сегодня с утра я получила уже формальное подтверждение того, что нужно будет делать именно a href=”", в котором будет лежать img src=”"
Хотя на сегодняшнем собрании мы всё-же попросим “ту сторону” мотивировать своё требование :) а как же. Вдруг оно только от того, что их верстальщики не достаточно знают теорию?

Comment by Leo
2008-05-06 15:41:11

На мой взглад – абсолютно правильное разделение на сам документ и его оформление. То, что атр-директор не достаточно квалифицирован для работы с грамотно созданными документами – это, по большей части его проблемы.

Хотя можно задачу решить простым вставлением комментариев в HTML. И чёткой договорённостью об этом с Канадской стороной.

В этом случае можно будет чётко выделять блоки, которые программисту нужно будет брать и что-то с ними делать.

 
 
 
Comment by Zigzag
2008-04-19 13:39:48

Кстати, лично я для себя до сих пор не определил, как рисованные кнопки вставлять? Иногда я переопределяю стилями input, иногда это блочная ссылка с фоном, иногда это изображение обрамленное в ссылку.

Дело в том, что когда стили отключены, кнопка, имхо, должна оставаться кнопкой и всем своим видом показывать, что это некий контрол, а не просто линк.

Comment by nundesign
2008-04-19 14:25:30

У нас обычно программный комплекс диктует объект, а мы его уже оформляем – где-то программерам нужно использовать линк, где-то кнопку. Обычно не верстальщик говорит программисту, что “вот ссылка, я её уже оформил”, а программист верстальщику – здесь будет такой-то контрол, поэтому такой вопрос не встаёт.

Comment by Zigzag
2008-04-20 17:30:44

Но с другой стороны ведь не программисту решать вопросы связанные с доступностью сайта. Он может и линком сабмитить форму. Тут скорее программист под верстку подстроиться должен.

 
 
 
Comment by Diushych
2008-04-20 03:24:08

Вот как прикольно;) начали с технической мелочевки и дошли аж до кармы… Вот мое глубокое и нерушимое имхо: это абсолютно неважно хреф оно или css. Но очень важно другое, а именно заказчик лазающий в коде, это абсурд! Это нужно обговаривать в тз? Ну не может заказчик править ваш код, что бы он там себе не думал;)))

Балин;)) Свободу Попу.. тьфу ты, Свободу Дизайнерам!!!:)))))

Comment by nundesign
2008-04-20 09:56:54

Уважаемый Diushych, меня очень тревожат комментаторы,которые “комментируют”, не прочитав внимательно исходный текст. Кто и где говорил о том, что “в код лазает заказчик”? Это вы себе придумали.
Будьте внимательны.

 
 
Comment by xzirrow
2008-04-26 22:42:40

Регулярно читаю тут про верстку…. про нетабличную верстку. не холиварю … меня завидки берут, нельзя ли как-то выйти на связь чтобы посмотреть на те сайты, которые вы делате. Ну очень хочется научиться верстать блоками ПРАВИЛЬНО. Так чтобы ничего не падало при двойном-тройном увеличении шрифта . И чтобы если клиент вставил свой контент (таблицу) в мой макет, то она бы и не пряталась и блоки бы не падали . Но пожалуйста … пришлите ссылок на то что вы делаете для “них” (ведь это уже работает в сети ?) Потому что уж столько копей поломано, а так хоть поучиться .

Comment by nundesign
2008-04-27 12:57:53

Уважаемый xzirrow, я здесь даже название компании ни разу не написала, в которой работаю :) не уверена, что будет правильно давать ссылки на работы, уже опубликованные в сети.
И кроме того, нет уверенности, что моё руководство не читает эти заметки :)

Что касается “и если клиент вставил свой контент” – так чудес не бывает. Конечно, всё расползётся. Особенно если у владельцев Вася-менеджер копипастом через предоставленный ему визуальный редактов типа tekerik`а постит контент из word`а, и тут же его правит – там и кривые незакрытые таблицы, и кривой код самого телерика и ессно руки Васи.

Comment by xzirrow
2008-05-03 09:21:41

Татьяна, спасибо за ответ. Про название компании не знал что это закрытая информация, да я вас понимаю, просто было интересно посмотреть на вашу продукцию – столько пишете, что так и подмывает посмотреть.

А по поводу версти – да все именно так, как вы и пишете только у нас FCKEditor :) вообще вместе с коллегами на работе – пришли к выводу что просто верстка div-ами это одно, а вот верстка дивами под CMS (где можно вставить все что хочешь) это совсем другое.

Вот буквально на днях – что-то типа каталога высоко технологического оборудования (три колонки – справа/слева – новости/анонсы – в центре описание, спецификация). Верстка сложная – с отрицательными marginами и пр. все чудесно.

В один станок клиент в описание вставляет широкую таблицу спецификаций станка. Все падает. :(

И переверстать то не получится, потому что div не расширяется как td. И если бы было td то у него бы скроллбар появился и он бы понял что сглупил поставив такую таблицу, а тут он нам пишет – а чего оно мол падает?
Наверное все это вам знакомо, наверное и я не так много знаю о блочной верстке. И поэтому стараешься лазиешь по сети, смотришь как другие делают. Но увы чудес не бывает.

 
 
 
Comment by Junior
2008-04-27 11:18:40

Татьяна, здравствуйте.

По поводу слайсов считаю, что заказчик обосновано требует их сохранение. Единственное, он может быть не в курсе, что вы не используете слайсы для верстки, тогда просто объясните ему это.

Что такое слайсы и почему это важно

Слайсы – это направляющее линии по которым в дальнейшем вырезаются картинки и генерится код.

Нужны он для того, чтобы:
а) получить сгенерированный код (в 99% он нафиг не нужен)
б) использовать получившуюся сетку для последующей верстки в случае корректировки дизайна.

Я у своего верстальщика требую грамотной разметки слайсами до написания кода. Во-первых, это заставляет осмысленно подойти к написанию структуры кода. Во-вторых, хорошая сетка в дальнейшем упрощает “перевырезание” элементов при изменении дизайна. Например, взяли и сменили иконки, а размер остался прежним. Верстальщику не нужно думать над тем с какими отступами для теней он вырезал иконки, он просто открывает PSD в IR и пересохраняет слайсы. Дел на 5 минут.

По поводу фоновой картинки.

Есть просто правило: если элемент (картинка) является частью содержимого страницы, то она кодируется соответствующим образом (img).

Например, фотографию интерьера гостиницы не рекомендуется делать фоновым изображением (если нет других объективных причин), а вот фон страницы, ссылки, скругленные уголки не несут самостоятельной информации. Поэтому кодируем их теми элементами, которые для этого больше соответствуют. Это, как бы и есть семантика.

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

p.s. И я тоже присоединюсь к просьбе xzirrow – очень хочется посмотреть на работы (можно скинуть на ящик). Мне интересен не столько код, сколь все остальное: тематика, сетки, гаммы, стили.

Comment by Nashev
2008-10-11 19:30:27

Поздновато, наверное, но всё же спросить хочется: Уважаемый Junior, а Вы слайсы с гайдами не попутали случайно?

 
 
Pingback by Блог NunDesign
2008-04-30 15:49:36

О вёрстке, холиворах и реалиях [...] так давно к посту “Два вопроса про качественный в кавычках CSS” получила много полезных развёрнутых [...]

 
Comment by Антон
2009-05-18 19:29:09

У меня есть аргумент против img:

при выделении (CTRL-A, или мышкой) будет выделяться также и картинка, что иногда неудобно. С бекграундом не будет.
Плюс, если таких кнопок много, то через CSS кода будет меньше.

 
Name (required)
E-mail (required - never shown publicly)
URI
Your Comment (smaller size | larger size)
You may use <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> in your comment.