Является ли относительное расположение идеальной альтернативой для кошмара написания тысяч хаков IE? - PullRequest
2 голосов
/ 25 мая 2010

Я нашел это очень интересным:

http://matthewjamestaylor.com/blog/ultimate-3-column-holy-grail-pixels.htm

Он избегает использования горизонтального поля и отступов, чтобы избежать проблем с IE. Я думаю, что он "подделывает" отступы, используя относительное позиционирование.

Вы когда-нибудь делали что-то подобное? Мне не хватает общей тенденции против взломов IE? Есть ли у этой практики недостатки?

1 Ответ

1 голос
/ 26 мая 2010

Этот пример устарел.

Подобные проблемы с полями и отступами были проблемой с моделью сломанной коробки IE5. В более поздних версиях IE вы получите эту модель разбитой коробки, только если IE находится в режиме quirks . Это то, что вы должны избегать любой ценой. Используйте правильный тип документа!

Пример, который вы на самом деле связали опирается на эту модель разбитой коробки. У него есть обновленная версия, которая не: http://matthewjamestaylor.com/blog/holy-grail-no-quirks-mode.htm

Но какие проблемы с IE вы на самом деле пытаетесь решить? Вы специально хотите 3-х колоночный макет, как на странице, на которую вы ссылаетесь? Хотите общие решения для проблем с макетом IE? Или вы хотите иметь возможность вообще забыть об IE?

Самое важное, что нужно знать при работе с макетом и IE6 / 7, это его свойство hasLayout . Прочитайте Наличие макета , чтобы узнать все подробности об этом.

Если вы специально ищете инструменты, которые могут помочь в создании сложных макетов, совместимых со всеми браузерами, вы можете взглянуть на сеточные структуры, такие как YUI Grids или Blueprint . Но я не могу сказать, что я их фанат, так как они, как правило, приводят к бессеманному супу.

Если вы не возражаете против небольшого (экспериментального) JavaScript, чтобы автоматически исправить весь ваш сайт, вы можете попробовать IE7.js . Я использовал это, хотя оно определенно имеет свои причуды и ограничения, поэтому используйте на свой страх и риск.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...