プログラミング学習やフリーランスエンジニア情報を発信していきます。現役フリーランスエンジニア2人で運営してます!

  1. フロントエンド

position:sticky;でスクロールで付いてくるサイドバーを実装【簡単CSS】

最終更新日:2019/03/07

今回は、一定量スクロールすると付いてくるサイドバーをCSSで実装する方法を紹介します。

今回実装するもの

一定量スクロールすると付いてくるサイドバー

実装

.side_widget{
top: 0;
position: -webkit-sticky;
position: sticky;
}

position:stickyとは

要素は文書の通常のフローに従って配置され、直近のスクロールする祖先及び包含ブロック (直近のブロックレベル祖先、表関連要素を含む) に対して top, right, bottom, left の値に基づいて相対配置されます。オフセットは他の要素の配置には影響を与えません。
この値は、常に新しい積み重ねコンテキストを作成します。なお粘着要素は、直近の祖先がスクロールしない場合でも、「スクロールの仕組み」を持つ直近の祖先 (overflow が hidden, scroll, auto, overlay として作成されたもの) に「粘着」します。これによって「粘着」のふるまいを効果的に抑止します (Github issue on W3C CSSWG を参照)。

対応ブラウザ2018/06/19日現在


MDN

IEは未対応ですが、position:static;その場合position:static;と同様の動きをするので、そんなに問題ないかなと思ってます!

以下の記事ではこのposition:sticky;を用いて実際にWordPressで止まるようにしています。
今のサイドバーに表示されている目次の作り方の紹介です。

The following two tabs change content below.

ぞえ

実務未経験から1年でフリーランスエンジニアになって給料が6倍になった男/アル中 としても活躍しているので常に酒臭い/しかも190cmの巨人でもある。今は週3勤務しながら@ryudoi1と当メディア運営中 詳細なプロフ ぞえのプロフィール!! Twitterアカウント Twitter

関連記事

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

PAGE TOP