Небольшое предисловие. Так случилось, что я подписался на сайте WSG на мейл-лист для обсуждения различных вопросов, связанных с применением веб-стандартов в ежедневной практике. Да, в этой подписке случаются интересные обсуждения, но зачастую там появляются вопросы настолько простые, что даже становится как-то неловко за авторитет уважаемой WSG. Вот и в этот раз вопрос был просто потрясающим: можно ли использовать картинку-бекграунд для кнопки с нефиксированной шириной. Но не это меня побудило меня черкануть пару строк. В одном из ответов, как лучше все сделать проскользнул совет:

Something like this (как-то так):
button {padding:2px 5px;background: #FAF9F5 url(../images/bgimg.png) repeat;line-height: 1.5;
}
then use smaller padding left/right value for IE, e.g. (и потом уменьшите отступы для ИЕ)
button {padding: 2px 1px !important}

Вот последняя строчка и вызвала мое изумление. Уважаемый подписчик WSG не знает как можно избавиться от лишних отступов по бокам в кнопках в Интернет Експлорере.

Поясню в чем дело. Интернет Експлорер в версиях до 7 включительно добавлял в кнопках (будь то input, илиbutton) справа и слева непонятные отступы, причем, чем длиннее была надпись на кнопке, тем больше отступы. Вот как-то так:

лишние отступы в кнопках в браузерах Интернет Експлорер 5-7
лишние отступы в кнопках в браузерах Интернет Експлорер 5-7

Тогда как в остальных браузерах (для меня это Файрфокс, Опера и Хром) все выглядит так:

отступы в кнопках в файрфоксе
отступы в кнопках в файрфоксе

Никаких непонятных отступов, все одинаково, независимо от количества знаков в надписи.

И что же делать? Как привести в чувство этот загадочный ИЕ? Читать далее

Геоинформационная Система ?нвестора Санкт-Петербурга

Состоит из двух частей: непосредственно сайт и картографический модуль. (http://www.investinfo.spb.ru/ru/about/info/  и http://map.investinfo.spb.ru/mapview/ соответственно)

На сайте я немного необычно, как мне кажется, сделал меню (первый его уровень). Как обычно, я старался умень?ить количество картинок, используемых для создания меню. ? делая это меню, я еще не использовал CSS-свойство clip. Думается мне, что это свойство мне могло пригодится. Но обо?елся и без него, сделав все кроссбраузерно, использовав минимум картинок, причем PNG с альфа-каналом. Вот из-за альфа-канала весь сыр-бор, как обычно. Как известно ?Е6 не поддерживает альфа-прозрачность в PNG напрямую, а только через проприетарные майкрософтовские фильтры. ? поэтому не получилось просто сдвигать фон пунктов меню, как обычно это делается для меню, реализованных фоновыми картинками. Ну раз нельзя двигать фон, будем двигать целиком элемент, в котором фоном будет необходимая нам картинка.

?так, делаем картинку, состоящую из двух частей: одна с белой надписью, вторая с красной (синий фон добавлен, чтобы читалась белая надпись, но синий в данном случае означает прозрачный).

пункт меню

Высота картинки равна двойной высоте меню (в данном случае 51 пиксель). Создаем в таблице стилей описание для элемента, фоном которого будет на?а картинка. Размеры элемента равны размеру картинки. Это необходимо для, чтобы пнг-фильтр для ?Е6 отобразил картинку полностью. ? теперь нам только остается сдвигать этот элемент с фоном при наведении на соответсвующий пункт меню.

иллюстрация к идее
иллюстрация к идее

Чтобы показать как все это ведет себя в браузере воспользуюсь возможностями FireBug.

исходное состояние. элемент с необходимым фоном подсвечен голубым цветом
исходное состояние. элемент с необходимым фоном подсвечен голубым цветом

Красным обведены стили, отвечающие за исходное состояние.

наведенное стояние пункта меню
наведенное стояние пункта меню

Как видите (обведено красным), я поспользовался отрицательным <code>margin</code>, чтобы сдвинуть элемент с фоном и показать красную надпись.

Вот такой вариант мне при?ел в голову, когда я верстал этот макет. ? вот итог работы.

макет главной страницы
макет главной страницы

Что касается карты, то в ней единственной сложностью было, что приходилось работать через удаленный рабочий стол, имея не очень хоро?о сгенеренный картографическим модулем HTML. При?лось много перелопачивать уже готовых ?аблонов вывода результатов. Но общий каркас мне удался) Аж самому понравилось. К тому же было принято несколько моих предложений по, как мне кажется улуч?ению интрефейса. ? верстка получилась в общем компактная, вполне себе семантичная. ? почти без Expressions для ?Е6) В общем смотрите, любуйтесь, что понравилось — используйте. К сожалению в статичном варианте раздела карты у меня нет, по причине укзанной вы?е. Все делалось наживую на удаленном сервере. Но будет время, соберу воедино все стили и всю верстку карты и выложу на общее обозрение.

карта Геоинформационной Системы ?нвестора Санкт-Петербурга

При верстке карты обнаружил забавную мелочь: из всех браузеров, которые у меня установлены (?Е6-8, ФФ 2-3,5. Опера 9.2-10, Хром 3.0.183.1 и Сафари 4 бета (кстати, надо скачать уже не бету)), только Сафари и ?Е8 понимают свойство background-image для selecta‘а. background-color понимают все, даже ?Е6, а вот background-image отнюдь нет.

Заявление на отпуск

Отношения с начальством зачастую слишком заформализированы, сухи, безжизненны. А как было бы хорошо, если бы различные заявления можно было бы писать живым, слегка ироничным языком, например так:

Милые дружочечки, Коленька и Васечка. Вот и выдалась свободная минутка. Спешу с пламенным революционным приветом на всякий случай уведомить вас, драгоценных и ненаглядных моих, что с такого-то мая я с глубоким сожалением покидаю землю обетованную, нашей компанией называемую, и уезжаю в отпуск. Мне очень неудобно намекать, но неплохо бы заранее выдать мне денежек, чтобы расставание не было таким печальным, и поминал бы я вас добрым словом и вечерней молитвой.

Искренне ваш, Сережка. Чмоки-чмоки!


Приведен пример реального заявления, но которое, к сожалению, мы не решились отправить на подпись руководству, хотя, как мне кажется, все было бы понято правильно.
Любое совпадение имен и должностей совершенно случайно и непреднамеренно.
Коленька и Васечка — директора.

Вот была бы жизнь, если б народ на парился по поводу должностей, положения на иерархической лестнице, субординации.

Факультет — новая литература нового поколения

Давно длится проект (с марта месяца 2009 года), для которого сверстал общий макет и несколько внутренних страниц. Особенностями проекта по верстке я бы назвал обилие закругленных уголков на различных, местами неоднородных, фонах. Макет тянущийся с прижатым к низу страницы футером. Да, чуть не забыл, ко всему прочему здесь еще и «кастомные контролы» присутствуют. Как ни убеждай дизанеров, что «кастомные контролы» — это зло, а клиент всегда прав.

макет главной страницы
макет главной страницы

типовая страница
типовая страница

личный кабинет
личный кабинет

книжная полка пользователя
книжная полка пользователя

Коротко о давнем

Упомяну несколько сайтов, которые можно отнести к категории «дела давно минувших дней».
Когда меня только взяли на нынешнее место работы, а это славная компания TRINET, мой опыт насчитывал 5 месяцев (1 месяц в компании ЛОЗА и 4 в широко известном ПРОДВИЖЕНИЕ). Но сразу мне досталось верстать сайт самой компании TRINET. Вот, так сказать, с корабля — на бал и началась моя первая серьезная работа в вебе. Почти сразу за этим последовали сайты larga.ru, tk-pik.ru, oslo.ru, marinsurance.ru, tkspb.ru. Да, да, это все я. И это далеко не все, что мне пришлось делать в TRINET. Далеко не всем я доволен, многое сейчас я сделал бы по-другому, но так ведь нет предела совершенству. За что мне по меньшей мере не стыдно, а кое в чем даже нравится, как сделано, это уже упомянутый сайт страхового общества «Скандинавия» и сайт консультационной компании IT Expert (Произошел редизайн на обоих проектах. Вряд ли теперь найду старую верстку). На IT Expert мне единственно не нравится «пепельница» на главной странице. По дизайну подразумевалось, что пункты выпадающего меню будут более многословными, а потому сделаны нетянущимися и такими широкими. А за некоторые страницы я даже удостоился отдельной, хотя и безличной) похвалы.

Параллельно началось мое сотрудничество с замечательным дизайнером, с которым приятно работать, хотя не все его дизайнерские ходы мне нравятся с точки зрения удобства и легкости. Иногда объем картинок для оформления зашкаливает ;) В моем портфеле много работ, выполненных по его заказу, в частности по сайту и справочной карте Геоинформационной Системы инвестора Санкт-Петербурга.

Агенство праздников Исполнители желаний

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

masterwish.ru

Апрель 2008

Как убрать обводку у input и textarea в Сафари и Хроме?

Очень просто. В таблице стилей пропишите для input и textarea следущее


                input,
                textarea {
                    outline:none;
                }
                

 

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

А теперь поместим курсор в поле ввода.

поле ввода с фокусом

Пример из сделанной недавно верстки

Выглядит немного неаккуратно, неправда ли?

Это же свойство можно использовать, если надо избавиться от рамки вокруг ссылок при фокусе на них. Чтобы, например, не портить «красоту» меню.
условное меню с фокусом на одном из пунктов пунктом
Хотя убирать outline и неправильно. При навигации по сайту с помощью только клавиатуры эта рамочка помогает понять, на каком элементе сейчас фокус.

Кликните поочередно на ссылки или используйте клавишу TAB, чтобы навести фокус на них:
обводка есть / обводка убрана

Есть у ИЕ6 такая особенность: если какому-либо блоку задать ширину, то ИЕ6 воспринимает эту ширину, как минимально возможную и, если содержимое блока оказывается шире заданной ширины, то ИЕ6 растягивает блок до размеров содержимого. Тогда как другие браузеры, в полном соответствии стандартам сохранят указанную ширину, а содержимое просто покажут выступающим за пределы блока (если не указано свойство overflow, отличное от значения visible (значение по умолчанию)).

Читать далее

Я бы сделал лучше-2

Забавно, что поводы для написательства мне дает студия Лебедева: выходом в свет нового сайта, или же, как в это раз, новым рецептом в Техногрете.

Что же мне не понравилось в это раз? Ну, ни то, что не понравилось, но все же.

Приводится способ выравнивания блоков с картинками по центру родительского контейнера. Что же, хороший способ применения нечасто используемого свойства inline-block. Но…

Так это выглядит в браузере:
демонстрация выравнивания блоков с картинками по центру

Рецепт основан на двойственной природе элемента INS. Как известно элементы INS и DEL могут быть как блочными (display: block), так и строчными (display: inline). При этом, будучи строчными, они могут быть контейнерами для блочных элементов, таких как DIV или P. Впервые подобный трюк я увидел около двух лет назад у Stuart Nicholls. Там была необходимость расположить по центру меню из табов при произвольной общей ширине меню. К сожалению, это пример был пересмотрен 24 января этого года)). Я сам использовал этот прием на своей народовской страничке (не смеяться!!!). Что забавно, в новом способе центрирования меню использован метод, который я впервые увидел у Лебедева. Но вернемся к нашим баранам.

Читать далее Я бы сделал лучше-2