2017-04-02 4 views
0

Here is my jQueryのセレクタの前に - 私は私が何をしたいのかを説明します:.width()するには:jQueryの

私は私のセクションに100vw追加しました:セレクタの前にはの問題は、水平スクロールが(100vwが100vwにスクロール幅を追加するため)と表示されていることです。

私は、水平スクロールの問題を回避する方法は、私のセクションに$(ウィンドウ).width()を適用することであることを考え出し:セレクタの前に、この方法は私の100vwはでスクロールバーを計算しません

。これは、私はそれが行われる必要があります(私はこれを達成する方法をまだ知らない)いじる方法です:

  1. の選択:jQueryの

    の要素
  2. セット前:幅スタイルの前に$(ウィンドウへ).width()

  3. 横スクロールがなくなっています。

どのようにすればいいですか?

CSS:

section { 
    width:500px; 
    height:100vh; 
    margin:0 auto; 
    background: #222226; 


} 

section:before { 
    content: 'this is my before'; 
    position: absolute; 
    width: 100vw; 
    z-index:-1; 
    background: #ccc; 
    top:0; 
    bottom:0; 
    right:0; 
    left: calc(-50vw + 50%); 
} 

は、jQueryの(私はので、それは間違っている知っている:前DOMモデルの一部ではありませんが、彼はアイデアです):あなたがいる理由

$(document).ready(function() { 

     var window = $(document).width(); 

     $('section:before').css("width", window); 

     }); 

答えて

0

本当にわかりませんあなたがしていることをやっているが、... overflow-xプロパティをhiddenに設定する。

overflow-x: hidden; 

また、your:before要素でmarginとpaddingを0に設定する価値があります。

+0

overflow-x:hidden; –

+0

これは、overflow-xを設定するとします:hidden; bodyタグに –

+0

他のオプションは幅を設定することです:calc(100vw - .47rem);セクションの前に: –

関連する問題