А загадочного здесь ничего нет. Кроссбраузерность (от англ. cross-browser) сайта это одинаковое отображение вашего сайта в разных браузерах. То есть, если Ваш сайт сверстан кроссбраузерно, то он будет одинаково выглядеть и правильно функционировать в разных браузерах. А если нет –то наоборот…
Откуда пришла на нас эта напасть? А из 90-х годов. В это время меду фирмами, производителями браузеров развернулась жестокая конкуренция, сильно смахивающая на войну. Которую, кстати, так и назвали – «война браузеров». В ходе этой войны, разработчики стали включать в свои программные продукты, так называемые «нестандартные возможности». Естественно, это вылилось в то, что сайт, который был создан под какой-то браузер, некорректно отображался в другом. Не работали
некоторые функции, «сбивалась» верстка и.т.д.
Вообще-то, существует консорциум под названием W3C (World Wide Web Consortium). Его задача создание стандартов в языках html и css. По идее, все кто создает сайты, какие-то web программы, должны делать это с соблюдением этих стандартов. В том числе и фирмы, создающие браузеры. Так должно было быть по идее. Но проблема в том, что эти фирмы не только по-разному интерпретируют html и xhtml коды, но и не горят желанием сотрудничать
с W3C. Все это выливается в то, что одна и та же страница сайта, в разных браузерах может отражаться по-разному. Это «по-разному» может быть разным. От несоответствия мелких деталей и до того, что сайт разваливается совсем. И это свинство, является головной болью всех, кто занимается созданием сайтов.
К сожалению, лидирует в этом «чемпионате» по несоответствию стандартам самый популярный браузер - Internet Explorer. Да и остальные не безгрешны.
Как же добиться кроссбраузерности сайта хотя бы в самых популярных браузерах? Сначала, давайте определимся, кто тут у нас самый популярный. Перечисляю поименно, по степени популярности в русском Интернете: Internet Explorer, Firefox, Safari, Chrome, Opera, Netscape.
Какие методы применяют для решения проблемы кроссбраузерности? Прежде всего, обычными средствами css. И если этого не достаточно, то на помощь могут прийти так называемые css хаки. Хаки – это обыкновенное форматирование элемента страницы, но с точным указанием браузера, для которого это форматирование выполняется. Для каждого браузера имеются свои собственные хаки, с помощью которых можно добиться практически
полной кроссбраузерности. Сами хаки можно найти в Интернете. Ресурсов, посвященных хакам и их применению вполне достаточно.
Для укрощения Internet Explorer применяют так называемые условные комментарии. Условные комментарии действуют только в Internet Explorer совместно с операционной системой Windows. Они великолепно подойдут для написания специальных команд адресованных Internet Explorer. Эти команды поддерживаются, начиная с версии Internet Explorer 5 и выше.
Выглядят условные комментарии так:
<!--[if IE 6]>Инструкции для IE 6<![endif]-->
Как видите, их основная структура такая же, как и принятая, в html комментариях:
(<!–– ––>)
Вследствие этого остальные браузеры будут принимать условные комментарии за простые комментарии и будут их полностью игнорировать. Internet Explorer, надо полагать, был запрограммирован на распознание специального синтаксиса <!––[if IE]>, на решение условия if и и на то, чтобы парсить содержимое условного комментария таким образом, как если бы это было содержанием обычной страницы.
Так как в условных комментариях используется синтаксис html комментариев, то они могут включаться только в html страницу и не могут быть включенными в CSS файл. Что не очень хорошо, но тут уж ничего не поделаешь.
О слове парсить. Может не все понимают о чем идет речь. Есть такие программы или функции – парсеры. Их назначение разбор текста на составляющие элементы. Процесс разбора и есть парсинг. К примеру, самый обычный текст можно разобрать на абзацы, предложения, а так же на слова и знаки препинания. Текст html можно разобрать на теги, атрибуты тегов, имена тегов и атрибутов и так далее.
Я понимаю, что если Вы только начинаете делать свой сайт и опыта у Вас маловато, то все эти рассуждения о кроссбразурности могут повергнуть вас в меланхолию. Ну, во-первых, никто не говорил, что будет легко, а во-вторых, я Вам посоветую, как сделать сайт не заморачиваясь этими хаками и условными комментариями. В том числе и из собственного опыта.