Posts Tagged ‘css’

Занимательные баги вёрстки

Wednesday, April 30th, 2008

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

Я тоже не сразу нашла. Честно говоря танцы с бубном пришлось исполнить. Знаете, что оказалось? Их мудрый верстальщик, или кто-то там, кто правил ресурсные файлы, открывал xml на редактирование в каком-то (пока не знаю в каком) редакторе, который после себя оставил некоторое количество непечатных символов, не в смысле матерных, а в смысле не отображаемых. Они не обнаруживались простыми методами, они не показывались в исходном коде документа браузера, они не ловились даже если с клавиатуры по символам идти построчно. Совершенно случайно в M$ Studio в режиме редактирования полей ресурсов увидела странные квадратики. Почистила код, запустила проект ура, всё работает! Заодно обнаружила ещё несколько кривостей, уже не наших. Отписываю это всё канадскому PM`у:

Alex: так-перетак-разтак!!! Как ты смогла это вычислить?
Tatyana: гы. танцы с бубном
Alex: шаман, однако
Alex: Ты можешь все это кинуть мне в мыло? Подробненько, чтобы и дятлу было понятно. Пли-и-из
Tatyana: Счас, секунду. только я по русски напишу письмо
Alex: Да хоть на суахили. Мне все-равно туда нужно будет маты вставлять
Alex: Ну открой секрет, как же ты все-таки находишь такие баги, Таня
Tatyana: Я ковыряла долго. Потом, с возрастом приходит убеждение, что чудес не бывает
Alex: А-а-а-а, так вот в чем разница. Я-то все еще верю в чудеса…
Tatyana: Чудеса может и бывают, но логически предсказуемые!

О вёрстке, холиворах и реалиях

Wednesday, April 30th, 2008

Не так давно к посту “Два вопроса про качественный в кавычках CSS” получила много полезных развёрнутых комментариев, спасибо всем. Напомню, что один из вопросов был о том, что если на странице есть кнопка-ссылка, к примеру, “Download”, то как правильно её реализовать: использовать конструкцию <a href=""><img src="" alt="Download" /></a>, где имидж в ссылке - красивая картинка для кнопки, или просто <a href=""></a>, где в описании класса фоном подгружать ту же красивую картинку? Правильно с точки зрения семантики, с точки зрения грамотной вёрстки и т.д. В комментариях были сторонники первого решения, были - второго, большей же частью писали о том, что без принципиальной разницы, по договорённости с главным менеджером. К примеру, заинтересовали такие критерии:

  1. Если легко придумывается адекватный текст для alt, то нужно делать картинкой
  2. картинки фоном в CSS — это крайняя мера, потому что “обнаруживать их в CSS - это не прозрачно”
  3. когда стили отключены, кнопка должна отображаться как кнопка
  4. представить, что все img на странице проиндексируются поисковиками и будут выдаваться в поиске по картинкам. Иногда помогает сориентироваться, где уместно использовать тег img /, а где - фончик в css.

На самом деле вопросов, связанных с логикой и семантикой вёрстки возникает много и не все они решаемы (или легко решаемы), где-то знаний не хватает, где-то хорошие тенденции рубятся “корпоративной политикой” или просто выбором технологий. Там же, в комментах к тому же посту несколько раз попросили дать ссылки на некоторые наши проекты, я уже как-то писала и ещё раз напишу: извиняйте, ребятки, не дам. Но задумалась о том, что вовсе не на всех наших проектах такое пристрастное требование верстать дивами, да ещё и обращать внимание на логику кода и семантические тонкости.

(more…)

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

Wednesday, April 16th, 2008

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

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

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

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

CSS Naked Day в поддержку веб-стандартов

Wednesday, April 9th, 2008

What happened to the design?

To know more about why styles are disabled on this website visit the Annual CSS Naked Day website for more information.

Уважаемые посетители! Не пугайтесь. У меня не слетели стили, этот блог не поломался и злые хакеры здесь не при чём. У этого блога (впрочем, как и у родительского сайта) просто отключена таблица стилей. Не случайно, не в следствии ошибки - это, господа, акция такая :), подробности которой вы можете прочитать на CSS Naked Day. С целью поддержать веб стандарты. Незамысловато и просто. “This includes proper use of (x)html, semantic markup, a good hierarchy structure, and of course, a good ‘ol play on words.

Когда-нибудь, если ситуация сложится, опубликую пример кода отвёрстанного канадскими верстальщиками веб-сайта, как живую иллюстрацию полного непонимания сути семантики, как пример того самого “абы как, главное, чтобы отображалось КАК НА ЭСКИЗЕ”. Зато при этом с гордостью - мы верстаем, типа, безтабличной вёрсткой. Нафига она нужна такая безграмотная безтабличная, даже сами объяснить не могут, что-то типа “сейчас так модно”. И при этом - опять те же заголовки (по логике документа) не тегом H*, а (в лучшем случае) спаном с классом, описанным в .css, в худшем - тегом font с атрибутами. И при этом хорошо, если классы используются, а чаще уважаемые канадские верстальщики юзают идентификаторы, причём ID с одним именем используется двадцать пять раз в одном документе (!), и очень смешно выходит у наших программеров: у них редактор настроен с включенной валидацией всего, что только можно, в том чисте включен чекбокс, не допускающий дублирования имён идентификаторов (что очень удобно на больших проектах, где задействовано много программеров - без шансов даже случайно задать имя, уже назначенное какому-то объекту), и в случае, если открывается документ, в котором несколько идентификаторов с одинаковым именем, то OPS! это имя остаётся только у одного объекта, у остальных автозаменяется на что-то типа Div1, Div2 etc.

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

А потом держаться за своих уже (почти-почти) классных верстальщиков, на которых тратилось время и силы, потому что страшно представить, что кто-то из них потеряется и нужно будет искать и обучать ещё и ещё.

UPD0: В блоге Юрия “akella” Артюха, на котором тоже отключены стили, нашла список так же участвующих в акции :)

UPD1: Вот по аське сделали замечание, что стоит попиарить сайт с веб-стандартами WSG (кстати интересно - не было единого мнения, где живут? *Russia 140* + Russian Federation 11*; а Ukraine при всём при этом - 32 зарегестрированных участника) и классику жанра - Zen Garden.

UPD2: А вот ещё на блоге visualstyle как-то не так давно (точная дата — 19 марта) мелькнула подобная идея, поверхностная реализация, фончики-цвета-цветочки. Мелькнула и пропала, и даже не обсуждалась, наверное, уважаемый soulskeeper думает, что блог никто не видит - не читает :) А мы всё видим.

Киевская конференция UA WEB 2008

Thursday, March 27th, 2008

UA Web 2007 И как я туда вообще выбралась? Иллюзии по поводу того, что на конференцию меня пошлют от компании, и компания же оплатит как конфу, так и проживание-прокормление, развеялись очень быстро. Может, оно и к лучшему. Напросилась в гости к девчушке, с которой когда-то вместе работали, и тут оказалось, что она тоже идёт на эту же конференцию, и, более того, её муж читает на конфе доклад (на второй день). Как тесен мир.

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

Мероприятие, как и было обещано, прошло в конференц залах (двух) Президент Отеля (публика периодически перетекала из одного зала в другой за интересными докладами), всё было так солидно и по взрослому. В холле бар и столы для кофебрейков. Вайфай работал стабильно, но с моего htc что-то куда-то писать было лениво. Зато появился повод лишний раз задуматься о том, что разработчики интерфейсов веб-сайтов, особенно всяких редакторских интерфейсов типа админки вёрдпресса, могли бы серьёзнее подойти к вопросу юзабельности и доступности блин этих самых интерфейсов для мобильных устройств.
Спешно перед поездкой, в самый день отъезда, купила мыльницу - выбор в пользу малых размеров, потому что возиться с любимым Canon`ом (который Canon EOS 400D Kit 18-55) тяжко, да и в условиях прогрессирующей лени бессмысленно. Но для мыльницы не взяла зарядное устройство для акка, и к вечеру первого дня она благополучно разрядилась, так что фотки будут, но позже и не очень много.

Долгожданные доклады о правильной вёрстке были отслушаны, всё понравилось, всё правильно, но чуда не произошло, ничего такого, чего бы я не знала или не использовала, никаких, гм., откровений, ессно, не прозвучало. С другой стороны, доклады по XSL оказались сложнее, чем мне понятно, будем догоняться реальной практикой на местечковых проектах.

UPD второй день: на следующий день то ли я адаптировалась, то ли список докладов (и докладчиков) сложился удачный, но второй день показался более плодотворным и ярким. Понравились доклады по интерфейсам новостийных сайтов, по методам тестирования юзабилити веб-интерфейсов, познакомилась и обменялась контактами с Геннадием Осипенко, Юлией Климентовской, Полом Гокиным (Paul Gokin), надеюсь, с пользой. Некоторые докладчики впечатлили - хорошим, уверенным знанием темы, которую читали, умением общаться с аудиторией, способностью увлечь даже такой темой, к которой я, к примеру, прямого отношения не имею (но имею опосредованное отношение). Один пример - доклад Марины Дидковской “Тестирование и оценка времени”. Я с нашими тестировщиками общаюсь напрямую, и, хоть они формально не являются моими подчинёнными, зачастую приходится тратить изрядно времени на введение людей в тему, на объяснение деталей процессов, особенно на тестовых версиях проектов, объяснения, кому какие баги надо постить и почему какой-нибудь “этот визуальный баг” таковым не является и прочие житейские радости.

Хотелось бы, конечно, подробнее пройтись по всем докладам, но так получилось, что я ничего не конспектировала, изданные тезисы восстанавливают в паммяти не все доклады, а записываемые ролики, к сожалению, будут доступны не раньше, чем через 2 недели, а может, и позже. Потому что, как сказали организаторы, ролики ещё надо оцифровать, порезать и разметить, а это время, и вообще… Может, после поездки наберусь сил, о чём-то напишу подробнее.
Ну и, конечно же, благодарности организаторам. Юра, ты умничка! Такое грандиозное мероприятие организовать… Олегу Бунину и Павлу Рогожину. Всем киевским и московским организаторам. И докладчикам - не поленились напрячься, подготовиться, выступить. И участникам - приехали, собрались, значит, не зря суета была. Спасибо Наташе и Лёше Колупаевым за приют :)
В общем, не жалею :)

UPD2: а что делать с этой красивой карточкой profyclub`а? Вот этот роскошный номер - его куда-нибудь нужно вбить?
Интересно, что на РИТ я регестрировалась ещё в прошлый раз, увы, не поехала, и не поеду на этот. Надо бы и поработать. С другой стороны, хотелось бы быть в теме, хотелось бы получить материалы конфы, да не спустя год, а как бы сразу. Если будет прямая трансляция - так же узнать где вовремя, а не на следующий день пялиться на “прямой эфир остановлен”, да.

И кто они после этого? (кто такой дизайнер)

Tuesday, March 18th, 2008

Кого в вашей компании называют “дизайнером”? Понимаю, что вопрос не совсем корректный - тут зависит от того, чем компания, собственно, занимается, но всё равно интересно. К примеру, на прошлый пост о дедлайне и голимой вёрстке (трансляция в ЖЖ), где я использовала термин “дизайнер-верстальщик”, uznick ответил, что “А вот не надо совмещать дизайнеров и верстальщиков :)”. Отчасти ведь прав, не поспоришь. Но есть тема для обсуждения.

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

В нашей компании какое-то количество лет был один дизайнер - он именно так и назывался (не будем показывать пальцем, хотя, разумеется, это была я) , и это, с позволения сказать, дизайнер рисовал скетчи на сайты, отвёрстывал как простые сайты, так и макеты под шаблоны движков, и стандартных, и нашими же программерами писанных, с дальнейшей адаптацией вёрстки для новых страниц наших развивающихся проектов, рисовал, собирал и тюнил скины для виндовз-приложений, создавал пиктограммы и полноформатные иконки для программ, с программерами же оптимизировал интерфейсы этих же виндовз-программ; а так же периодически вёл переговоры с заказчиками и принимал участие в постановке более-менее внятной задачи для разработчиков. (more…)

Про дедлайны и безграмотную вёрстку.

Monday, March 17th, 2008

Знаете, честно признаюсь, двоякое у меня лично отношение к дедлайнам. В первом моём отношении к ним я вижу следующее стечение обстоятельств: действительно, бывает такое, когда какому-то мудрому менеджеру приходит в голову уникальная идея, которую он не поленился высказать руководству. Которое, в свою очередь, перенаправило эту идею аналитикам и те, в свою очередь, оценили как перспективную и своевременную. А тут ещё руководство встретилось с потенциальными партнёрами, и те заинтересовались, и сказали, что, мол, вот то собрание, которое планируется в конце месяца - единственно удачное время для презентации базового макета будущего продукта, если они увидят, что воплотить идею - реально, если идея на деле окажется настолько же жизнеспособной, как и на словах, то будут вам инвестиции и всяческая наша поддержка. И вот идея спускается к разработчикам в виде ТЗ и с комментариями, мол, ребятки, вы уж постарайтесь. Сроки горят, за три недели нужно сделать базовую функциональность, базовый интерфейс (пусть не конечный вариант, но чтобы всё было причёсано и опрятно как минимум), если пройдёт - будет у нас бюджет на глобальный проект, минимум на год разработки для целой команды (сколько это человекочасов получается?).

В такой ситуации разработчики понимают, что если постараются, как просят, то в самом деле это и участие в чём-то глобальном/интересном, и полезный опыт, и повышения зарплаты, и на самом деле есть смысл поднапрячься (так было у нас с тем августовско-сентябрьским дедлайном, тяжёлым, но оправданным, как показала жизнь). Особенно, если сверхурочные оплачиваются и на предыдущих проектах разработчики убедились, что их не кинут, что это не гнусное использование рабской силы, а за хорошие проекты в самом деле надо бороться всей командой, сообща. Потому в прошлом у меня столько было заметок о командной работе, о взаимопонимании между группами разработчиков, между рисующими дизайнерами и верстающими, между верстальщиками и программерами, и между всеми ними и менеджерской надстройкой.

Но бывают и совсем другие дедлайны. Которые от безграмотного менеджмента и неуважения к разработчикам. Когда проект у людей висит уже не первый месяц, они что-то там возились, оптимизировали и даже разрабатывали функциональность, потом забрасывали на какое-то время, потом вдруг, скажем, под вечер в среду присылают письмо с архивом (!) проекта, частично даже без исходников (precompiledWeb), мол, ребята, вы там причешите в стиле (***) - в общем, нашего предыдущего большого проекта. Всё это без описания функциональности и без документации на сам проект, типа вы же такие умненькие, разберётесь. Типа, там же только таблицу стилей подредактировать. Запускаю проект (ага, без исходного кода, без связей, ещё повозиться надо, чтобы он вообще запустился, чтобы вообще хоть как-то увидеть интерфейс глазками, покликать по функциональным элементам), и тихо млею от того, насколько безграмотно организовано филе… больше сотни .aspx страниц, без шаблонов, с кошмарнейшим html кодом - доктайп не прописан ни в одной из, сплошные незакрытые или закрытые ошибочно теги (открыт параграф, закрыт спан), зато всё оформление прописано атрибутами в самих тегах. Да и значения атрибутов в одном теге то в двойных кавычках, то в одинарных, то совсем без оных. Встроенный в редактор валидатор кода зашкаливает, и это естественно - он подчёркивает всё, где видит неправильность, т.е. его использовать для правки смысла не имеет. А ещё часть функциональных элементов (сложных гридов, к примеру, с сортировками/фильтрами/настройками внутри, или календарик для фильтра по датам) вообще собираются js скриптом полностью - т.е. те же теги и атрибуты тегов - шрифты, цвета, фончики, извиняюсь. Какой css?? Ну и, повторюсь, весь этот хлам без сопроводительной документации. И даже тот факт, что запускающая для проекта страница называется Test.aspx, разработчики должны были понять сами :) ага. (more…)

UA Web 2008 - мартовская конференция для веб-разработчиков

Wednesday, March 5th, 2008

UA Web 2007 Конференция для украинских веб-разработчиков, которую и здесь в том числе анонсировала ещё осенью, всё-таки состоится! Теперь она - UA Web 2008, пройдёт в Киеве, 27-28 марта, в Президент Отеле. Одна из целей организаторов - собрать в одном месте и перезнакомить профессионалов этой отрасли всего за 900 гривен с участника. Сейчас сформированы три секции - “Клиент”, “Серверное программирование и базы данных” и некие “другие темы” (там будут доклады про НЛП и аутотренинг, советы, как стать успешным фрилансером, или вот ещё — “Использование скрытых психофизических возможностей веб-разработчиков для успешного создания и внедрения современных Интернет-проектов” и не знаю даже как можно было бы меня убедить пойти на эту третью секцию), меня же очень-преочень интересует первая секция, каждый первый доклад. Настолько интересует, что я, скорее всего, буду. Регистрация у меня уже есть, осталось оплатить. Кстати, на сегодняшний (!) день подано 939 заявок на участие и получение материалов.

Подробнее о программе конференции вы можете узнать здесь; я у себя дублировать всю программу не буду, хотя бы потому, что опубликован не конечный вариант — ожидаются ещё доклады и докладчики, поэтому на сайте конференции вы, вероятно, всегда получите последнюю версию программы. Но не могу не поделиться программой на ту самую первую, клиентскую секцию: (more…)

Тюним мелочи в блоге на WordPress

Tuesday, February 19th, 2008

Опять рюшечки для блога: добавила несколько плагинов: Popularity Contest, Show Top Commentators… Этому блогу ещё и года нет, и всё казалось, что подобные рюшечки - ещё рано, мало контента, мало комментариев. Не из чего выбирать популярные записи. Но плагины понравились, особенно “Popularity Contest” - на бэкэнде даёт таблички со статистикой по записям, которая как бы и так известна и доступна, но не так наглядна. Статистика по популярным записям предсказуема (для меня), конечно, но пусть будет список, доступный всем посетителям. “Топ комментаторов” - это реверанс в сторону моих друзей, которые читают блог, поддерживают своими отзывами и, конечно, комментариями (Спасибо!). Списков в сайдбаре (в правой колонке) образовалось 10 штук - вот что делает с нами любовь ко вторичной навигации!

Есть один незатейлевый дизайнерский приём - в подобных ситуациях, когда нужно показать, что все эти списки предоставляют разные группы данных (или данные по разным фильтрам) - менять им маркеры; всего-то визуально — иконочка-козявочка, но поле-е-езная.
Маркеры в списках можно использовать из стандартных нумерованных-ненумерованных типов (для ненумерованных это circle, disc и square), но и создавать свои, уникальные иконки для списков; используют два самых простых способа, с помощью таблиц стилей:

1. обнулять стандартный тип маркера css свойством list-style-type:none; и после задавать свою картинку для маркера свойством list-style-image: url();
2. опять же обнулять стандартный тип маркера + обнулять поля и отступы у тега списка и задавать неповторяющуюся фоновую картинку для элемента списка. Вот этот вариант я и выбрала для блога. Версия движка WP стоит последняя, и панели в сайдбаре блога собираются соответственно wp widget`ом. Если не лезть в код слишком глубоко - каждому блоку в сайдбаре добавляется (через пробел) два класса, например, для списка категорий - class="widget widget_categories", для списка последних записей - class="widget widget_recent_entries", для последних добавленных комментариев - class="widget widget_recent_comments". Не мудрствуя лукаво добавляем в таблицу стилей блога дополнительные записи для описания этих классов:

.widget ul {margin:0px; padding:0px;}
.widget ul li {padding-left:20px;}
.widget_recent_entries ul li {background: transparent url(/wp-content/themes/default/images/ico-post.gif) no-repeat 0 0;}
.widget_recent_comments ul li {background: transparent url(/wp-content/themes/default/images/ico-comment.gif) no-repeat 0 0;}
.widget_categories ul li {background: transparent url(/wp-content/themes/default/images/ico-categories.gif) no-repeat 0 0; text-transform:uppercase;}

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

Вообще с этим виджетом интересно - к примеру, у него есть один из элементов - RSS (на самом деле этот элемент можно плодить, этих “списков” может быть в сайдбаре несколько). Тогда, если, к примеру, у человека по каким-то причинам ведётся несколько блогов, с помощью этого элемента можно включать блоки с последними записями (количество записей задаётся), и получать такие списки, как, к примеру, в харьковском тестовом блоге Nundesign: посмотрите в сайдбаре (правая зелёная колонка) блок “Последнее из блога NunDesign:” как раз выводятся 10 последних записей отсюда, из главного блога. Но так можно включать не только свои перекрёстные блоги, но и формировать простенькие миниинформеры для любых инфопроектов, которые отдают rss, или даже - продавать таким образом рекламное место. К примеру, на месяц. Это ведь очень удобно делать через виджет - и редактировать урлы, и контролировать количество записей, 10 - дороже, а последние пять, к примеру - в самый раз за недорого.

А ещё что-то не могу сообразить, как разделить виджет на два, чтобы можно было делать раздельные панели. И выводить на одной панели - одни виджет-элементы, на другой - другие; и как можно добавлять свои элементы в виджет - те же вставки для “популярных записей” и “рейтинга комментаторов”?

Ещё подключила Google XML Sitemaps, но его раньше не было не из-за того, что я считала, что блогу рано - просто упустила, недоглядела. Заодно наконец-то включила запись о карте сайта на блоге на Гугловских инструментах для веб-мастеров, Yahoo`вских и MS Live`вских.

А вот с ЖЖшным плагином LiveJournal Crossposter - пришлось отметить ту опцию, которую одно время отключала, потом обратно включала по просьбе френдов, по одной простой причине, о которой писала и раньше, да ответа тогда никто не подсказал. Уж не знаю в чём причина на самом деле :) но методом долгих и упорных экспериментов было обнаружено, что если в настройках плагина выбрана опция по-умолчанию ” Link back to WordPress”, то глюков с кросспостом в ЖЖ не замечается, если же дефолтовая заменена на “Use an lj-cut” (что означает, что в тех ситуациях, когда для длинных постов я использую скрытие части текста с помощью more, то при кросспосте в ЖЖ публикуется полный текст блога, и скрывается обычным ЖЖ-шным lj-cut`ом), то в случае, если пост нужно отредактировать - он отправляется в ЖЖ как новый пост, а не происходит редактирования старого. Так что эту опцию я вернула в дефолтовое состояние, извиняюсь перед теми, кому обещала в ЖЖ-шном дневнике полностью публиковать записи.

Тут не совсем понятно - в жж все записи всё равно постятся “только для френдов”, но, поскольку туда я захожу не часто, обнаружила, что появилось много френдов, которые, наверное, меня читают, вернее, хотели бы, но не могут из-за того, что записи friends only. Вчера написала открытую запись о том, что, мол, народ, который не зафренжен, объявитесь, я зафренжу, но только скажите, что вы не боты и не спамеры (а вот вывели ещё такой тип ботов - челоботы, чаще всего это или совсем начинающие владельцы своих блогов, или продажные комментаторы, которые постят комменты за ссылки, эта услуга, если я не ошибаюсь, до сих пор стоит 10 баксов за 1000 комментариев, хороший заработок для студентов)… Но пока… Молчат пока именно невзаимные френды. Может, они и в самом деле не настоящие? Или подождать, отозвутся ещё?

Дела сайтостроительские. Разработка

Friday, September 14th, 2007

Недавно один из наших программеров в личке поделился сокровенным: оказывается во многих софтконторах, где уровень проектов плюс-минус приближен к нашему, одно из важных требований к программерам - обязательное знание html (xhtml)+css на достаточно глобальном уровне! Надо же… Раньше на эту тему никто у нас и не задумывался, а тут вдруг попёрло что-то, да ещё и подхлёстывается неожиданными дискуссиями в тему “разделения/распределения обязанностей”.

У наших программеров (.NET) такого требования не было и на собеседованиях никто ничего по теме вёрстке у них не спрашивал - основная среда разработки - M$VS, и знания тестировались только возвышенно-программерские. Вёрстку, как следствие, в большинстве своём публика знает только в первом приближении, и в том случае, когда начинается работа с интерфейсом и публике всё же приходится свои рабочие контролы как-то размещать на странице, они городят совершенно безумный код, разумеется, не ручками, а в режиме “design” - этого лучше не видеть, скажу только, что, когда я получаю в работу очередную страницу, основное время уходит на удаление всего того кода, который там предусмотрительно набодяжен.

Клиенты ныне настолько разбалованные аяксом, что требования к интерфейсам (во всяком случае служебным интерфейсам на сервисы) у них довольно масштабные, посему в конторе очень много используют как готовых решений типа telerik, RadControl и иже. Деревья, закладки (имитация виндовых “табов”), хитрые “комбобоксы” с расширенной функциональностью и прочее, и прочее. Иногда прокатывает - просто взять готовое и - напильником (в том числе и визуал), иногда так складывается, что напильником приходится из подводной лодки допиливать реактивный самолёт, и, оценив масштаб /когда готовый контрол доработать теоретически реально, но, для узкой задачи он, с одной стороны, является избыточным и тяжеловесным, с другой стороны - ковыряться детальнейше в больших объёмах чужого кода - то ещё удовольствие/, принимаем решение делать свой контрол (но на это понадобится, к примеру, один рабочий день. Как правило это самое трудное - выбить этот самый один рабочий день). (more…)


Free Hit Stats