Попробуйте float:left
на .codeblock pre
.Работает в Firefox
<pre>
умещается внутри контейнера .codeblock
, как будто места больше нет.float
делает ваш <pre>
элемент достаточно широким, чтобы вместить его содержимое.
ОБНОВЛЕНИЕ
.codeblock pre {
float: left;
min-width: 100%;}
Работает в Firefox, Opera, IE9 и WebKit
.как я понимаю, элементы внутри контейнера с overflow:auto
вписываются в область, видимую по умолчанию.Ширина этих элементов width:100%
равна ширине внешнего контейнера.В этом примере внутри внутреннего контейнера у вас есть тег code
, который не разбивает строки, поэтому текст выходит за пределы внутреннего контейнера и заставляет внешний контейнер показывать свитки.Чтобы избежать этого, вам нужно, чтобы внутренний контейнер соответствовал его содержимому, поэтому float:left
.
Но, как вы умно заметили (а я нет), он не будет расширяться, если внешний контейнершире, чем код, поэтому во избежание необходимости указывать min-width:100%
, чтобы внутренний контейнер использовал как минимум все видимое пространство внутри внешнего контейнера.