Как определить, поддерживает ли браузер функцию CSS @supports? Поскольку Internet Explorer и Safari не поддерживают его, мое веб-приложение не знает, какие стили применяются в этих браузерах.Функция обнаружения для @supports?
ответ
Использование чистого CSS, вы можете сортировать полагаться на каскаде, чтобы определить, понимает ли браузер @supports
, сделав @supports
правило с универсально поддерживаемой декларацией, такие как color
декларация, и опрокинув еще одно такого правила, объявленное в глобальном масштабе :
#test {
color: red;
}
@supports (color: green) {
#test {
color: green;
}
}
Смотрите мой ответ на this question для детального объяснения чистого метода CSS.
Если вы хотите, чтобы обнаружить его с помощью JavaScript, вы можете использовать библиотеку обнаружения Modernizr функции, как указано в комментариях (не забудьте включить CSS-поддержки в вашей загрузки конфигурации):
if (Modernizr.supports) {
console.log('Your browser supports @supports.');
} else {
console.log('Your browser does not support @supports.');
}
Чистым решением для CSS может быть ответ, который я искал. В настоящее время использование чего-то похожего, но не было известно об основных функциях. – Azrael
Используя чистое решение CSS, применяются правила базового стиля, даже в браузерах, которые ранее отображали правила стиля в блоке @supports. EDIT: Имеет ли значение, поддерживает ли блок поддержки медиа-блок? – Azrael
@Elitis: Это не имеет значения - в этом случае блок '@ support' должен применяться тогда и только тогда, когда это делает и блок' @ media'. Если вам нужно исключить базовые стили из неподдерживаемых браузеров, переместите их в блок '@ support'. С другой стороны, если вам нужно исключить базовые стили из * поддерживающих * браузеров, вам также придется переопределить их - это недостаток, связанный с переопределением. – BoltClock
- 1. функция для обнаружения установки cli
- 2. Функция javascript для обнаружения вспышки
- 3. @supports css calc function
- 4. CSS @supports (:: псевдоэлемент)
- 5. Функция обнаружения bfcache?
- 6. Функция обнаружения сбоя узла
- 7. функция обнаружения тральщика python
- 8. Функция обнаружения php называется
- 9. Функция обнаружения в Features2d
- 10. Функция обнаружения браузера - поддерживается ли Silverlight?
- 11. Функция обнаружения поддержки для svg-фильтров
- 12. функция обнаружения признаков для события DOMContentLoaded
- 13. Эта функция достаточно для обнаружения xss?
- 14. Функция для обнаружения дубликатов в листе Excel
- 15. Функция обнаружения для setDragImage HTML5 Перетаскивание
- 16. Функция C++ для обнаружения DxDiag «Direct3D Acceleration»
- 17. Функция обнаружения SURF для линейных панорам OpenCV
- 18. Функция для обнаружения NSStringEncoding из NSURLResponse?
- 19. Функция Best Hash для обнаружения изменений данных?
- 20. Функция обнаружения для свойства перехода CSS3
- 21. Modernizr Функция обнаружения с v3
- 22. Функция обнаружения повторения Token Token
- 23. Функция обнаружения foreignObject в SVG
- 24. Функция обнаружения активируется с результатом
- 25. Функция обнаружения работает по щелчку
- 26. Функция обнаружения браузера: проверка орфографии?
- 27. Функция обнаружения краев в opencv
- 28. Функция обнаружения SIFT в C
- 29. Пуля для обнаружения обнаружения столкновений
- 30. Использование функции Supports() с общим типом интерфейса
насчет Модернизатор? –
Это основа, правильно? Если возможно, я хотел бы как можно больше держаться подальше от каркасов. – Azrael
Nope ... Функция обнаружения JS - http://modernizr.com/ –