divを作成してページに垂直に固定される方法を探しています。 divはページ上の同じ場所にとどまります。しかし、それは絶対的に水平に配置されているので、ユーザーの画面が私のWebページよりも狭い場合、右または左にスクロールしても、divが画面と共に移動することはなく、場合によっては画面の端に半分ページを完全にオフにすることができます。"Position:Relative"コンテナ部門内で垂直方向と "絶対方向" Divを "固定"位置に設定
このdivは、 "Position:Relative"部門内にある必要があります。
divの軸を変更するために異なる位置を割り当てる方法はありませんが、これは私が達成したいと思っている効果を説明する最も良い方法です。
私はこれまでこれを持っていましたが、これは基本的に相対ディビジョン内の固定ディビジョンです。
CSS
#container {
position:relative;
width:700px;
height:1000px;
top:50px;
left:50px;
background-color:yellow;
}
#blue-box{
position:fixed;
width:100px;
height:100px;
background-color:blue;
margin-top:20px;
margin-left:400px;
{
HTML
<div id="container">
<div id="blue-box"></div>
</div>
私も問題を示す助けるためにjsFiddleを作成しました。
これは垂直には問題ありませんが、黄色のボックス(コンテナ)よりも狭く、水平方向にスクロールするようにWebブラウザのサイズを変更すると、青色のボックスがページと共に移動します。私はそれが起こるのを止めることを望んでいます。
これをCSSで実現する方法がない場合は、現代のすべてのブラウザとIE7とIE8の両方で動作する限り、JavaScriptを使用することができます。 (これがJavaScriptタグを追加した理由です)
私を助けてくれますか?
返信いただきありがとうございます。これはすべての最新ブラウザでうまくいきます!残念ながらIE8の問題は解決しません。 IE8でこれを動作させる方法はありますか? – Flickdraw
ああ、良いキャッチ。 $(windows).scroll(...)にする必要があります。私の答えを更新しました! –
素晴らしいもの。これは今、完璧に働いています、ありがとう! – Flickdraw