Я использую CSS3PIE для применения некоторых закругленных углов к элементам в Internet Explorer, которые будут получать их по таблицам стилей в других браузерах. Я столкнулся с некоторыми проблемами с этим все же.
В IE8 я обнаружил, что любой элемент, имеющий поведение PIE, будет вести себя странно. Контейнер перепрыгнет на несколько пикселей вправо, но содержимое останется в своем первоначальном положении, создавая впечатление, что весь контент сместился влево относительно своего контейнера. Это было бы особенно проблематично для элементов без или с небольшим количеством заполнения.
Мне удалось обойти проблему в IE8 с помощью X-UA-Compatible, но я бы предпочел избежать этого решения, если это вообще возможно. У меня нет доступа к IE9 для тестирования, но мои хаки для понимания, такие как PIE, не нужны, и было бы расточительно устанавливать режим совместимости в браузере, в котором он не нужен.
У меня есть худшие проблемы в IE6, когда макет PIE полностью разбит на список, настроенный на использование элементов списка display:inline; zoom:1;
(для имитации встроенного блока, который работает в IE8 и других браузерах). Здесь границы элементов списка отображаются совершенно не в том месте.
Так что в идеале я бы хотел, чтобы PIE работал правильно в IE6 и IE8 без необходимости прибегать к режиму совместимости. Что касается IE6, то подойдет изящный запасной вариант, когда PIE просто не применяется. IE7 - единственный браузер, где страница отображается так, как задумано.
К сожалению, я не могу предоставить пример страницы, но могу добавить ее позже.
Продолжение:
Вот некоторые снимки экрана, сделанные с помощью IE Tester. Я надеюсь, что они сделают вещи немного более понятными для всех. Как видите, IE7 в порядке. Однако в IE8 контейнеры смещены влево относительно их содержимого, а в IE6 элементы списка (с округленной границей в 1 пиксель) представляют собой полный беспорядок!
![IE6 is really mangled!](https://i.stack.imgur.com/nfvkg.png)
Полноразмерные версии для IE8 , IE7 и IE6 также доступны
Продолжение 2
Вот ссылка на демонстрационную страницу.
Поскольку другие дизайнеры работают над таблицами стилей и другими частями дизайна, я не могу обещать, что он будет оставаться полностью отражающим очень долго, но, надеюсь, будет достаточно долго, чтобы решить проблему. (Да, я знаю, что в IE6 есть ошибки JS, это не моя проблема).
Пример страницы