Существует ли верхний предел значений z-index в веб-браузерах?

StackOverflow https://stackoverflow.com/questions/227738

  •  03-07-2019
  •  | 
  •  

Вопрос

У меня есть случай, когда сторонняя реклама просачивается сквозь мою реализацию модального окна. Я хотел бы повысить z-индекс модального наложения как можно выше, чтобы объявление не показывалось поверх него. Есть ли предел значениям z-index? Я уверен, если есть, это зависит от браузера. Кто-нибудь знает?

Это было полезно?

Решение

Помните, что z-index не работает глобально, а только в «стековом контексте» (который трудно переварить определение в CSS), и если объявление устанавливает собственный контекст размещения, то z-index значения, которые вы установили в другом месте, могут вообще не влиять на него.

Однако, скорее всего, это проблема " оконного " Flash (объект без атрибута wmode = transparent ), который браузеры отображают поверх всего, как если бы это было окно над окном браузера . В таком случае z-index совсем не поможет. Вам нужно будет заставить ad [-provider] использовать wmode = transparent или использовать несколько сумасшедших хаков с iframes.

Другие советы

Максимальное значение zIndex, поддерживаемое большинством браузеров, равно 2147483647 (2 ^ 31-1), но Opera 9.2 не принимает значения больше 2147483583; Они исправили это в версии 9.5.

Не совсем, но вы можете рассмотреть естественные ограничения системы, например, диапазон int. Я бы держал его под 32 767 . Я определенно превзошел это в javascript, работая над аналогичной проблемой, и не столкнулся с какими-либо проблемами в основных браузерах и платформах, которые меня беспокоили в то время.

В случае сторонних рекламных объявлений и наложений, убедитесь, что wmode = " прозрачный " на вставке флэш-памяти является распространенной проблемой в том же духе. Также стоит отметить, что в IE есть ошибка со сложением z-индексов, поэтому, если вы не видите успеха, убедитесь, что вы не ударяете головой об стену с этим *.

Мне всегда нравится придерживаться какого-то соглашения , а не использовать произвольные цифры. Например, может быть, все в моем CSS находится между 0 и 10 . Может быть, дело в dhtml происходит в 100-х местах с осмысленным z-индексом для любого данного модуля.

* Sidenote: В частности, ошибка IE заключается в том, что IE рассматривает новый экземпляр потока документов как новый контекст стека для z-index. Вы должны убедиться, что ваши z-индексы не теряются в иерархии DOM, когда дочерний узел, который обычно наследовал бы ваш z-индекс, отображается в своем собственном контексте позиционирования.

Цитата из http: // techtrouts.com/is-there-a-limit-to-the-css-z-index-property/ :

Теоретически свойство z-index должно быть неограниченным или, по крайней мере, в пределах типа int, в зависимости от ОС и браузера. Однако, чтобы избежать ошибок браузера, вы должны ограничить значения z-index до +/- 32767.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top