2012-01-31 2 views
2

ПРОБЛЕМА: Содержимое моего div позиционируется как «абсолютное», а ширина содержимого больше, чем div. При необходимости «дополнительное» содержимое обрезается с помощью «overflow-x: hidden».Отключить прокрутку мыши при переполнении-x: hidden [CSS, HTML]

Хотя, если я пытаюсь использовать горизонтальный свиток с помощью скроллера мыши, содержимое становится видимым.

Как мне не позволить этому случиться? Я хорошо с помощью JS или/и решение CSS

код например

<body width='1000px'> 
    <div style='background-color: blue; width: 1200px'>contents</div> 
</body> 

Спасибо!

+1

, что происходит, если вы 'переполнения: скрытый;' вместо 'переполнении-х: скрытый;'? – ori

+0

ничего себе! Это исправляет это. Но нет ! :( Как я требовал переполнение-у: авто Черт –

+0

насчет 'переполнения: скрытый; переполнение-у:!?.. Авто,' Вы можете использовать как – Matthew

ответ

1

Я думаю, что поведение по умолчанию для тела документа - это разрешить прокрутку содержимого, которое слишком велико для него. Кажется, что это не слишком легко обойти.

Вместо указания ширины на вашем теле, вы можете попробовать использовать еще один DIV и вместо этого наложить на него ширину.

<div style="width:1000px;"> 
    <div style="width:1200px;"></div> 
</div> 

Есть ли причина, по которой вам нужно поместить ширину в тег BODY?

+0

На самом деле я не ставил ширину тега тела (упоминалось, что только для того, чтобы сделать размеры четкими). ​​ –

10

У меня была такая же проблема, если вы поместили ее в оболочку, тогда она предотвратит прокрутку трекпада.

#wrapper { 
    position: absolute; 
    width: 100%; 
    overflow-x: hidden; 
} 
+0

Это самое простое и чистое решение. – DrHall

+1

Это была большая помощь благодаря @sgengler. Фактически вы можете использовать это непосредственно на 'body', если вы установите' overflow-x: hidden; 'и' position: относительный; 'на нем – roborourke

-1

Вы должны использовать

$("element").on('mousedown', function(e) {}

Просто измените live на on

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