[解決済み] reactでスティッキーフッターを作るには?
2022-02-10 11:18:32
質問
スティッキーフッターの上位コンポーネントで、それ自身の中に他のコンポーネントをラップするものを作りました。
フッター.js
//this is a higher-order component that wraps other components placing them in footer
var style = {
backgroundColor: "#F8F8F8",
borderTop: "1px solid #E7E7E7",
textAlign: "center",
padding: "20px",
position: "fixed",
left: "0",
bottom: "0",
height: "60px",
width: "100%",
};
const Footer = React.createClass({
render: function() {
return (
<div style={style}>
{this.props.children}
</div>
);
}
});
export default Footer;
使用方法
<Footer><Button>test</Button></Footer>
しかし、ページの中身を隠しているのです。
これはよくある問題のようなので、ちょっと検索してみたら この問題 フッターのスティッキーはFlexBoxが推奨されています。しかし このデモ フッターはページの一番下にありますが、フッターは常にページ上に表示され、コンテンツは上記の領域内でスクロールされる必要があります (例. SOチャット) . さらに、カスタムスタイルシートルールで他のすべてのコンポーネントを変更するようにとのアドバイスがあります。フッターコンポーネントだけにスタイルを適用して、私が必要とするものを実現することは可能でしょうか。
解決方法は?
こんなアイデアもあります (サンドボックスの例リンク)。
フッターコンポーネントに、他の dom 要素が尊重するフッターの位置を表す幻の div を含める (すなわち
position: 'fixed';
).
var style = {
backgroundColor: "#F8F8F8",
borderTop: "1px solid #E7E7E7",
textAlign: "center",
padding: "20px",
position: "fixed",
left: "0",
bottom: "0",
height: "60px",
width: "100%",
}
var phantom = {
display: 'block',
padding: '20px',
height: '60px',
width: '100%',
}
function Footer({ children }) {
return (
<div>
<div style={phantom} />
<div style={style}>
{ children }
</div>
</div>
)
}
export default Footer
関連
-
[解決済み】サイドバーの位置を変更する
-
[解決済み】divの高さを画面の残りスペースで埋めるようにする
-
[解決済み] ユーザーエージェントのスタイルシートが私のCSSを上書きしないようにする方法
-
[解決済み] textareaのresizableプロパティを無効にするにはどうしたらよいですか?
-
[解決済み] 幅・高さをピクセル単位からパーセント単位で設定する。
-
[解決済み] 要素を水平方向にセンタリングする方法
-
[解決済み] Reactルータを使ったプログラムによるナビゲーション
-
[解決済み] React JSX内のループ
-
[解決済み] setStateを呼び出さずにReactコンポーネントを強制的に再レンダリングすることは可能ですか?
-
[解決済み】 {this.props.children} に props を渡すには?}
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン