CSS3 transform: rotate; в IE9
У меня есть элемент, который должен быть вертикальным в дизайне, который я сделал. У меня есть css для этого, чтобы работать во всех браузерах, кроме IE9. Я использовал фильтр для IE7 и IE8:
progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
Это, однако, как представляется, делает мой элемент прозрачным в IE9, а CSS3 «tranform» porperty, похоже, ничего не делает!
Кто-нибудь знает все-таки о вращающихся элементах в IE9?
- Поверните массив байтов YUV на Android
- iOS 6 UITabBarController поддерживает ориентацию с текущим controllerом UINavigation
- Как захватить текущий снимок экрана и повторное использование кода? (iPhone SDK)
- Java - Вращающийся массив
- Повернуть bitmap под реальным углом
Очень ценю помощь!
W.
- Повернуть прямоугольник Java Graphics2D?
- Повернуть BufferedImage внутри JPanel
- Вращение JTextField по вертикали
- Отзывчивый сайт на iPhone - нежелательное белое пространство для поворота от пейзажа к портрету
- CSS3 Поворот анимации
- Сглаживание текста Wonky при повороте с помощью webkit-transform в Chrome
- css вращать псевдо: после или: до содержимого: ""
- Вращение изображения на canvasе в андроиде
Стандартный CSS3 rotate должен работать в IE9, но я считаю, что вам нужно предоставить ему префикс поставщика, например:
-ms-transform: rotate(10deg);
Возможно, что он не может работать в бета-версии; если нет, попробуйте загрузить текущую версию предварительного просмотра (предварительный просмотр 7), которая является более поздней версией бета-версии. У меня нет бета-версии для тестирования, поэтому я не могу подтвердить, была ли она в этой версии или нет. Окончательная версия релиза определенно предназначена для ее поддержки.
Я также могу подтвердить, что свойство IE-специфического filter
было опущено в IE9.
[Редактировать]
Люди попросили дополнительную документацию. Как говорится, это довольно ограниченно, но я нашел эту страницу: http://css3please.com/, которая полезна для тестирования различных функций CSS3 во всех браузерах.
Но тестирование функции поворота на этой странице в предварительном просмотре IE9 вызвало ее сбой довольно эффектно.
Однако я сделал некоторые независимые тесты, используя -ms-transform:rotate()
в IE9 на своих тестовых страницах, и он работает нормально. Поэтому я пришел к выводу, что эта функция реализована, но есть некоторые ошибки, возможно связанные с ее динамической настройкой.
Еще одна полезная контрольная точка, для которой реализованы функции, в которых браузеры http://www.canIuse.com – см. http://caniuse.com/#search=rotation
[РЕДАКТИРОВАТЬ]
Возрождение этого старого ответа, потому что я недавно узнал о взломе под названием CSS Sandpaper, который имеет отношение к вопросу и может облегчить ситуацию.
Hack реализует поддержку стандартного transform
CSS для старых версий IE. Итак, теперь вы можете добавить следующее в свой CSS:
-sand-transform: rotate(10deg);
… и работать в IE 6/7/8 без использования синтаксиса filter
. (конечно, он по-прежнему использует синтаксис фильтра за кулисами, но это значительно упрощает управление, поскольку использует аналогичный синтаксис для других браузеров)
Попробуй это
Untitled Document Alpesh
У меня также были проблемы с преобразованиями в IE9, я использовал -ms-transform: rotate(10deg)
и это не сработало. Пробовал все, что мог, но проблема была в режиме браузера, чтобы сделать преобразования, вам нужно установить режим совместимости на «Стандартный IE9».
Я знаю, что это старо, но у меня была такая же проблема, я нашел этот пост, и хотя он не объяснил, что именно не так, это помогло мне в правильном ответе, так что, надеюсь, мой ответ поможет кому-то другому, у кого может быть подобная проблема для моей.
У меня был элемент, который я хотел повернуть вертикально, поэтому, естественно, я добавил фильтр: для IE8, а затем для свойства -ms-transform для IE9. Я обнаружил, что наличие свойства -ms-transform И фильтр, применяемый к одному и тому же элементу, заставляет IE9 отображать элемент очень плохо. Мое решение:
-
Если вы используете свойство transform-origin, добавьте его и для MS (-ms-transform-origin: left bottom;). Если вы не видите свой элемент, возможно, он вращается на средней оси и таким образом оставляет страницу как-то – так что дважды проверьте это.
-
Переместите свойство filter: свойство IE7 & 8 в отдельную таблицу стилей и используйте IE, чтобы вставить эту таблицу стилей для браузеров меньше IE9. Таким образом, это не влияет на стили IE9, и все должно работать нормально.
-
Обязательно используйте правильный тег DOCTYPE; если вы ошибаетесь, IE9 не будет работать должным образом.