Internet Explorer создает горизонтальную полосу прокрутки для ширины вертикальной полосы прокрутки - PullRequest
9 голосов
/ 30 октября 2008

Div, содержащий таблицу, имеет следующий стиль CSS:

#formulaAlts {
    float: right;   
    height: 200px;
    overflow: auto;
}

Это позволяет сделать так, чтобы при размере таблицы> 200 пикселей полоса прокрутки отображалась только для таблицы, а остальные элементы на странице оставались на месте. Отлично!

Теперь для нашего друга IE ...
В IE элемент порождает вертикальную полосу прокрутки, не увеличивая содержащий элемент. Чтобы «решить» это, создается горизонтальная полоса прокрутки.
Это отстой. И я не хочу, чтобы это сосало ...

Есть идеи?

- EDIT -
Я узнал, что линия

overflow-x: hidden;

заставляет IE игнорировать горизонтальную полосу прокрутки. Это лучше ... но не совсем так, потому что теперь часть моего стола невидима.

1 Ответ

2 голосов
/ 30 октября 2008

Тщательное.

overflow-x

не самый широко поддерживаемый атрибут.

Я склоняюсь к содержанию div с некоторыми правыми отступами:

CSS:

div.scroll {
  overflow:auto;
  padding-right:6px;
  /* I've found 6px to be just right my purposes, but try others*/
}

РЕДАКТИРОВАТЬ: Вам нужно будет где-нибудь добавить атрибут высоты, чтобы это работало! У меня обычно есть набор по умолчанию в объявлении div.scroll, а затем настраиваем его для особых случаев (большинство). HTML:

<div class="scroll" >
  <table>
  <!-- your table stuff in here -->
  </table>
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...