2011-12-17 4 views
24

На моем веб-сайте мне нужно использовать свойство css overflow: overlay для <div>.Переполнение: наложение не работает в firefox

Однако, это не рендеринг в браузере, а проверка css в firebug показывает, что он даже не существует, но он работает, как в Chrome. Я не тестировал сафари.

Что я должен изменить, чтобы получить свойство overflow: overlay css?

Благодаря

+0

Вы имеете в виду 'overflow: visible'? –

ответ

31

Возможные значения для перелива являются:

visible 
hidden 
auto 
scroll 

См here или here для обсуждения этих.

Использование любого другого значения в разных браузерах даст непредсказуемые результаты, поскольку они обрабатывают неверное значение по-разному.

Редактировать: После комментария мне удалось найти упоминание о переполнении: overlay here.

наложения описывается как:

Содержимое обрезается и полосы прокрутки добавляются при необходимости.

Важно также отметить, что он работает только в Safari или Chrome (т.е. WebKit).

This item на WebKit Bugzilla предполагают, что это не жилец в любом случае:

WebKit в настоящее время имеет собственную ценность переполнения CSS под названием «наложение», который без документов, и, насколько я могу сказать от чтения код работает точно так же, как «авто».

Мы должны либо удалить его, либо переименовать его в «-webkit-overlay».

Обновление март 2016

Похоже overflow: overlay не ушел. Есть признаки того, что он работает в соответствии со стандартами.

Разница в пределах overlay и auto будет заключаться только в том, что полосы прокрутки появятся поверх содержимого страницы, а не заставляют ее занимать пространство макета.

См. here for the discussion.

+0

Наложение работает так же, как и Auto. (при необходимости добавляются полосы прокрутки) –

+48

Существует разница: с помощью 'auto', панель прокрутки добавляется под элементом x-overflow. С 'overlay', он добавляется внутри элемента! Это означает, что никакого дополнительного свойства экрана не требуется, но текст внутри самого элемента затрудняется полосой прокрутки. Это тонкая, но полезная разница. Протестировано на хроме. – ypnos

+2

«переполнение: наложение» - это не то же самое, что «переполнение: авто».Если вы нарисуете полосу прокрутки, придав ей некоторую ширину, то оба этих свойства имеют разные эффекты. В случае наложения полоса прокрутки ни в коем случае не выталкивает контент, поскольку он плавает над содержимым и не находится в нормальном потоке документа. Но в случае «переполнения: авто» полоса прокрутки занимает некоторую ширину (как указано вами) и толкает содержимое так же, как и любой элемент притока. – maverick

Смежные вопросы