Учитывая эту простую структуру:
<div id="parent">
<div id="child">Lorem ipsum</div>
</div>
с этим CSS:
#parent {
width: 200px;
height: 200px;
padding: 20px;
overflow-x: scroll;
}
#child {
width: 500px;
}
Live demo: http://jsfiddle.net/523me/5/
Обратите внимание, что родительский элемент имеет дополнение 20px
и что ребенок переполняется горизонтально (потому что он шире). Если вы прокрутите родительский элемент до упора вправо, вы увидите, что ребенок касается правого края родителя.
Итак, родитель должен иметь правильное заполнение, но оно игнорируется. Кажется, что когда ребенок имеет фиксированную ширину, правильное дополнение родителя не применяется. (Это указано стандартом? Я хотел бы знать. Пожалуйста, дайте мне знать, если вы найдете что-нибудь!)
Есть ли способ принудительно применить правильное дополнение к этому сценарию без необходимости удаления каких-либо элементов из потока (путем плавания или позиционирования)?
Снимок экрана 1 - правое заполнение игнорируется. Так ведут себя все текущие браузеры.
Снимок экрана 2 - применяется правое дополнение. Это то, что я пытаюсь выполнить. (Btw, скриншот от IE7, который является единственным браузером, который не игнорирует правильное заполнение.)