Форум для практиков и дилетантов, в том числе - для практикующих дилетантов, а также для специалистов и профессионалов, которым есть что рассказать или есть о чём спросить наших практиков и дилетантов
Зарегистрирован: 13.09.2009 Сообщения: 840 Откуда: Санкт-Петербург
Добавлено: Вс Фев 27, 2011 3:14 pm Заголовок сообщения: Пряники для ослика или Принуждение ИЕ «быть как все»
Перефразируя высеченное в камне над последним убежищем господина Кольта, можно сказать, что «Господь Бог разъединил людей, разбросав их по свету, но сэр Тимоти Джон Бернерс-Ли исправил эту ошибку».
Однако, как выяснилось в дальнейшем, этот интеллектуальный подвиг Основоположника не помешал интернет-сообществу вместо того, чтобы дружно наслаждаться благами всемирного объединения сначала затеять так называемую «войну браузеров», а по её окончанию, когда Гиганты разделив сферы влияния вроде бы как пришли, по крайней мере, к видимости согласия, начать силами обычно разрозненных интернет-пользователей часто единоличную «партизанскую войну» с этими браузерами.
При этом, вопреки ставшего классическим определения монтёра Мечникова «Согласие есть продукт при полном непротивлении сторон», указанное «непротивление сторон» в случае «Майкрософт», «Опера Софтвейр», «Мозилла» и им подобным «браузер-фазерс» оказалось достигнутым в явно неполном виде.
И дело, конечно, не в досадных мелочах типа отображения одной и той же вэб-страницы в разных браузерах по-разному. В конце концов, каждый может поиграть в творческую личность, заявляя по поводу и без оного безапелляционное «А я так вижу!», а любой пользователь с помощью, например, CSS лишить «супостатов» возможности такого самовыражения.
Речь идёт о вещах более серьёзных, часто связанных с невозможностью получить «с разбегу» разумное объяснение выявленным «браузерным глюкам» средствами формальной логики.
Например.
Некоторое время назад в связи с переменами в интерфейсе нашего сайта мы для получения отзывов о сделанном открыли в нашей группе «В Контакте» http://vkontakte.ru/club12030880 тему «Сайт Магазина Природа» http://vkontakte.ru/topic-12030880_23017793 .
И там один из наших иногородних покупателей Александр Богданов написал нам (за что ему отдельное и совершенно искреннее «Спасибо!») замечание: «Не удобный интерфейс... То что все рубрики сайта сверху это не гуд (можно было бы их сбоку сделать столбиком), не у всех такие мониторы широкие».
Мы прониклись сказанным и продравшись через ежедневную рутину, выставки http://www.magazin-priroda.ru/pktd10prsm.html , встречи Новых Годов, включая азиатские, представляем новинки нашего интерфейса.
Практически на всех страницах нашего сайта (за исключением страниц типа «Крупный план», например, http://www.magazin-priroda.ru/gekkony10krpl.html ) есть Главное меню и сегодня у горизонтально расположенного Главного меню первая кнопочка («Наши новости») окрасилась в ярко-зелёный цвет, что с этого момента и в дальнейшем обозначает на нашем сайте наличие «динамической составляющей» в этом месте на этой странице.
Технология давно и хорошо всем известна: наводишь курсор на кнопочку (у нас указанного выше легкомысленного окраса) или элемент страницы в рамочке (этого же цвета) и, пожалуйста, раскрывается дополнительный контент, до того скрытый от глаз посетителя, а в случае с нашим Главным меню – её клон в вертикальном исполнении.
И всё бы ничего, но майкрософтовский браузер не поддерживает такую «динамику» с применением динамических псевдо-классов CSS, в случае если она «привязана» к каким-либо тегам, кроме (исключительно для «Интернет Эксплорер») тега для гиперссылок.
Причём и в случае использования для указанных целей этого гиперссылочного тега этот упрямый ИЕ (или как его ещё называют – «ослик») продолжает упорствовать и «в упор не видит» «динамических» инструкций.
Приходится прибегать к пресловутой политике «кнута и пряника», причём с учётом специализации нашего предприятия (мы любим животных, всех, даже упрямых) начать можно, пожалуй, с последнего, пряников.
И здесь отдельное спасибо продвинутым вэб-программистам, пристально изучающим причуды ИЕ во всём их многообразии.
Например, Энди Бадд и товарищи предлагают давать в вышеописанных случаях ИЕ «пряник» в виде стилевого правила a:hover {font-size:100%}, замечая при этом, что «присвоение значения 100% … «подталкивает» браузер ИЕ к правильной стилизации в случае наведённой гиперссылки… но что вы хотите от ИЕ?».
Ещё раз спасибо за подсказку, попробовали – получилось, по крайней мере для страниц типа «просмотрщик» (например, http://www.magazin-priroda.ru/pitony12fg.html ) и в случае отображения кратких аннотаций при наведении курсора на зелёноватую литеру «А» в правом верхнем углу фотографий в наших фото-прайсах (например, http://www.magazin-priroda.ru/gryzunyfp.html ).
Однако, не можем не заметить, во-первых, что ИЕ без проблем «съедает» этот «пряник от Бадда» с любым (не обязательно 100%-м) значением используемого свойства font-size (хоть 0%), в силу чего можно сделать вывод, что для успешного отображения «динамики» на странице для ИЕ важна не количественная составляющая «пряника», а его наполнение. А отсюда, во-вторых, можно попробовать объяснить эту «странность» ИЕ тем, что поскольку изначально тег гиперссылки был «заточен» на использование в качестве содержимого некоего текста, описание которого обязательно должно включать в себя свойство font-size, то и в случае использования стилевого правила с a:hover ИЕ занудно, по старой памяти, требует явного указания «размера» для содержимого строки.
Всё сказанное напоминает некоторые причуды браузера Opera, который некорректно отображает код со слоями, если в описании тега div не указаны в явном виде такие характеристики как width и height, пусть даже равные нулю. А браузер Файерфокс (не будем скрывать, любимый, потому что понятливый), кстати, позволяет обходиться без этих сложностей, безоговорочно принимая в качестве габаритов размеры содержимого контейнера div.
А что до ИЕ, то помимо описанного Бадд и Ко предлагают в случае необходимости «подтолкнуть ослика» к правильной интерпретации динамических псевдо-классов CSS давать ему, например, «пряник» в виде правила a:hover {border:none}.
Причём, по аналогии с вышесказанным, ИЕ работает в этом случае как надо, видимо потому, что гиперссылка с содержимым в виде изображения (уж в случае то ИЕ обязательно!) обычно сопровождается двухпиксельной рамкой, для выключения которой как раз и используется стилевое правило {border:none}.
Согласимся, «где бузина, а где дядька в Киеве»…
Но как говорят знающие люди: «Но что вы хотите от ИЕ?».
Если кому-нибудь сказанное покажется достойным обсуждения, пишите – пообщаемся.
Спасибо. С уважением, Вадим, Природа.
_________________ Магазин Природа - старейшее в Петербурге-Ленинграде торговое предприятие, предлагает широкий выбор декоративных растений, экзотических животных и зоотоваров! Заказ и доставка товара, полезные статьи, книги, бесплатные консультации!
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах