Слуга двух господ (Часть I)
Mike Melnikov (cherry-design@mail.ru)
Web-studio "Cherry-Design"
Да, это - бедный web-дизайнер, которому приходится тратить уйму сил для укрощения и дрессировки страничек, чтобы на них было приятно смотреть и при помощи Internet Explorer, и при помощи Netscape Navigator.
Общее правило при написании совместимых страничек звучит так: есть некоторый набор вещей, который можно сделать как в и IE, так и в NN, но только при помощи разных тэгов или разных параметров одного и того же тэга. Причина, по которой мы можем писать совместимые странички, заключается в том, что непонятные для себя тэги и параметры броузер игнорирует.
Установка отступов на страничке
Для примера разберемся с установкой отступов в тэге <body>. Если мы откроем руководство по HTML, которое нам предлагает Microsoft, то прочитаем там, что задать отступы на страничке можно при помощи следующих атрибутов:
leftmargin - отступ слева
rightmargin - отступ справа
topmargin - отступ сверху
bottom margin - отступ снизу
Будем последовательны и откроем теперь руководство по HTML со стороны Netscape, где прочитаем, что атрибуты для задания отступов выглядят следующим образом:
marginwidth - отступ слева и справа
marginheight - отступ сверху и снизу
А теперь мы напишем код, который задает отступы слева и сверху и корректно показывается как в IE, так и в NN. Вы уже наверно догадались, что он должен выглядеть следующим образом:
<body leftmargin="0", topmargin="0", marginwidth="0" marginheight="0">
Вуа-ля! Все нормально работает. IE видит только свои атрибуты, а NN свои, и всем хорошо :).
Сколько же всего таких хитростей? Неужели их нужно все помнить? Вовсе нет, нужно просто запомнить несколько наиболее употребимых и уже на стадии проектирования web-сайта отбрасывать возможности, которые невозможно реализовать в обоих броузерах. Да, это конечно немного обидно, но лучше уж мы немного пожертвуем каким-нибудь эффектом, чем оставим огромную часть посетителей за бортом своего сайта. Не правда ли?
Эти возможности лучше не использовать
Вот список возможностей, предоставляемых тем или иным броузером, но которые желательно не использовать (как минимум до появления аналогичного свойства у другого броузера).
- Использование атрибута bgproperties=fixed в тэге <body>. Его появление заставляет фоновое изображение оставаться неподвижным, но, к сожалению, данный атрибут поддерживается только IE, начиная с версии 2.
- Использование языка VBScript на динамических страничках. Почему? Потому что он абсолютно не поддерживается NN и, по всей видимости, никогда не будет. Да это и не нужно, так как есть JavaScript, предоставляющий те же самые возможности (и даже больше), что и VBScript, но поддерживающийся обоими броузерами.
- Использование ActiveX компонентов. Такие странички будут работать исключительно на Windows-платформах.
- Использование тэга <iframe> для создания плавающих фреймов - поддерживается исключительно IE4 и выше.
- Использование тэга <blink> - мигающий текст. Во-первых, он применим только в IE, начиная с 3-ей версии, а во-вторых, его применение не несет ничего, кроме раздражения и желания моментально уйти со странички.
- Использование тэга <marquee> - нежелательно точно по тем же причинам, что и у тэга <blink>.
- Применение специфического для NN тэга <multicol>, выводящего текст на странице в несколько вертикальных колонок, наподобие газетных. В настоящее время для этой цели следует пользоваться таблицами.
- Указание ширины и высоты изображений в процентах - поддерживается только IE.
Этот список, конечно, не полон, но это основные ошибки. Все, что описано, касается сайта, выставляемого в Internet. Если же Вы делаете сайт для внутренней сети (intranet), то можете использовать все, что Вам заблагорассудится :).
Назад |
Содержание |
Вперед