2017-11-17 19 views
1

大きな幅を持つ<div>の水平オフスクリーンオーバーフローを非表示にするにはどうすればよいですか?たとえば:大きな幅を持つdivの水平オフスクリーンオーバーフローを非表示にする

HTML:

<div class="example"> 
</div> 

CSS:div要素は、このような非常に大きい場合には起こらないようにするために

.example { 
    height: 100px; 
    width: 10000px; 
    background-color: black; 
    position: absolute; 
    overflow: hidden; 
} 

Here is an example fiddleスクロールバーが表示されて示して、私は願っています。

編集:親要素の隠しオーバーフロー-xを追加すると、幅の狭いiOSデバイスでは機能しません。

+0

あなたは、ウィンドウのスクロールバーを意味ですか? – Taplar

+1

本文{ overflow-x:hidden; } –

+0

便利なヒント:あなたは 'overflow:hidden;'で正しいトラックにいますが、これは '.example'コンテナの* inside *のためにオーバーフローを隠すように設定します。 '.example''div'が入っているコンテナに' overflow:hidden'プロパティを設定する必要があります。さらに、あなたが隠すだけの* horizo​​ntal *オーバーフローの場合は、 'overflow-x'を使う必要があります上記のように。 –

答えて

2

要素コンテナにoverflow: hiddenを設定できます。この場合、それは身体です。

body { 
    overflow: hidden; 
} 
+0

これは* all *オーバーフローして非表示になります(x & y;水平および垂直)。スクロールバーはまったくありません。 - OPで述べたように、水平オーバーフローが隠されている(および/または垂直スクロールの使用が必要な)場合は、 'overflow-x'を使用してください。 –

+0

私の編集を参照してください – Alexandru

1

CSSでoverflow-x: hiddenを使用すると、水平スクロールのみを隠すことができます。

+0

私の編集を参照してください – Alexandru

2

あなたはほぼそこにいます! .exampleクラスのoverflowを設定

のみはしかし、それの内部の溢れコンテンツを隠しています。

あなたはこれが動作するために、.exampleコンテナのoverflowを設定する必要があります - すなわち、それは内部にあるものは何でもコンテナ。


OPで言及したとおり、水平スクロールバーを非表示にしたいとします。このため

、あなたが

overflow-x: hidden 

しかし、(上述したように)設定する必要があり、これは.exampleコンテナの上にあることを確認してください。

body、または別のdivなどです。HTH。

例えば:

body, .parent-container { 
    overflow-x: hidden; 
} 
+0

私の編集を参照してください – Alexandru

+0

@Alexandruあなたの編集は質問の範囲を完全に変更します。新しい質問を投稿することを検討してください。 –

関連する問題