2017-08-08 113 views
0

我正面臨與固定元素的寬度有關的問題。這裏是筆:在「固定」元素上移動時的視口寬度問題

https://codepen.io/highfield/pen/PKpXGG

<body> 
    <nav class="navbar"> 
    <div style="position:absolute; left:20px; top:12px"> 
     <a href="#">left</a> 
    </div> 
    <div style="position:absolute; right:20px; top:12px"> 
     <a href="#">right</a> 
    </div> 
    </nav> 

    <div class="container"> 
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent sagittis, diam quis hendrerit bibendum, augue massa tempor neque, et dapibus risus ligula tempor nulla. Donec accumsan tortor eget lorem venenatis, ac tincidunt eros volutpat. Mauris 
     tempus libero metus, in posuere velit scelerisque vel. Donec dapibus dolor eu tortor interdum tincidunt. Donec dignissim nisl eleifend mauris efficitur dignissim. Nullam bibendum felis a nibh maximus efficitur. Donec commodo est at maximus facilisis. 
     Sed risus dui, ultricies non accumsan sit amet, volutpat sit amet dui. Sed blandit tempus feugiat. Aliquam quis felis at eros vehicula viverra in eget ante. Phasellus tempus blandit turpis, sed condimentum nisl rutrum eget. Pellentesque suscipit 
     sem accumsan nunc dapibus, id volutpat eros molestie. Proin dolor nisi, sodales quis tempor sagittis, sodales non lorem. Sed porta et nisl vel scelerisque.</p> 
    <p>Maecenas dapibus mattis sem. Nam suscipit urna nec massa maximus gravida. Aliquam nec arcu scelerisque, elementum orci at, dictum augue. Sed quis ex risus. Integer nec imperdiet nisi. Cras non pretium metus. In feugiat metus a ante tincidunt euismod. 
     Nunc leo nisi, pellentesque non sem ut, posuere vulputate ante. Morbi elementum vel libero in egestas. Pellentesque convallis ullamcorper mi ut sagittis. Vivamus ut facilisis sapien, vel consequat ligula. Vestibulum quis vehicula dui, vitae finibus 
     ante. Ut elementum suscipit nisl eu vestibulum. Integer semper aliquam metus.</p> 
    <p>Proin sapien ligula, pharetra id magna sit amet, bibendum fermentum tortor. Donec ultricies ex vel iaculis mollis. Duis scelerisque tellus purus, eu eleifend arcu scelerisque ac. Curabitur varius velit nunc, sit amet sollicitudin nibh rhoncus a. Nam 
     eu cursus sem, at tempor eros. Sed sodales, ante eu sagittis interdum, tortor dui feugiat diam, eu tempor mi justo sed risus. Ut non vulputate ligula, eu fermentum felis. Duis quis leo vel nulla ullamcorper viverra ut in leo. Suspendisse scelerisque, 
     lorem commodo convallis consequat, ex nulla maximus nunc, ac faucibus augue risus quis arcu. Fusce porttitor, augue non malesuada consequat, odio tellus viverra diam, ut tempus mi tortor ac felis. Proin a pretium nibh, in volutpat ligula. Mauris 
     non diam massa.</p> 
    <p>Maecenas hendrerit tincidunt ultrices. Sed vel sem velit. Cras felis purus, commodo a velit sit amet, fringilla blandit quam. Mauris ac cursus libero. Proin volutpat ut justo ut porta. Nulla lacus arcu, hendrerit sit amet nisi sed, dictum fermentum 
     erat. Interdum et malesuada fames ac ante ipsum primis in faucibus.</p> 
    <p>Donec nisl quam, efficitur non neque nec, vulputate rutrum lorem. Maecenas non finibus lectus. Nullam eu odio non leo mollis gravida. Aenean massa dolor, varius a hendrerit eu, molestie eu diam. Morbi lacus ipsum, ultrices et massa quis, viverra rutrum 
     urna. Sed vehicula convallis massa, ac maximus diam maximus in. Aliquam non ultrices orci. Phasellus erat ante, iaculis a iaculis eget, porttitor ut nibh. Sed varius hendrerit semper. Phasellus cursus posuere semper. Curabitur pulvinar eget metus 
     eget ultricies.</p> 
    </div> 

    <nav id="menu-left"> 
    </nav> 

    <nav id="menu-right"> 
    </nav> 

</body> 

代碼段模仿雙面菜單(不包括),其中「坍塌」欄是3D-翻譯關窗。爲了簡單起見,兩個側邊欄(半透明的綠色和紅色)僅根據其寬度進行了部分翻譯。

通過在「桌面模式」中看到頁面一切正常。當您看到使用(幾乎)任何移動設備的頁面時,問題就會變得很清楚。該頁面看起來可以水平滾動,儘管我沒有看到任何理由,因爲它比桌面視圖中的要好。第一個「nav」元素顯示其寬度大於文檔:爲什麼?此外,我無法找到一種方法來限制文檔本身的寬度。

總之,我希望從視口翻譯出來的元素應該保持隱形,並且在移動設備上不應該滾動,平移,縮放或其他任何內容。

enter image description here

回答