Bootstrap3 で、固定ナビゲーションの下だけ背景色を指定

Bootstrap3系

subheadクラス

 状態:-  閲覧数:2,579  投稿日:2015-06-10  更新日:2015-06-10
隙間なく埋めるためには、subheadクラスにマイナスmarginを指定する必要がある
・最終的に、下記CSSを適用
.subhead {
 color: white;
 background-color: black;
 padding-top: 20px;
 margin-top: -20px;
}
.subhead a {
 color: white;
 background-color: black;
}



・以下、試行履歴

Bootstrap3で、公式サイトに掲載されている、問題を起こしやすい固定ナビのデフォルトCSS

 閲覧数:538 投稿日:2015-06-10 更新日:2015-06-10

固定ナビデフォルトCSS


bodyタグに対してpadding設定しているため、subheadクラスを囲ったdivに背景色を適用しても、隙間が生じてしまう
body {
 min-height: 2000px;
 padding-top: 70px;
}



対策1


bodyタグ自体に背景色を設定して、subheadクラス以外の全ての背景色を白色設定
body{
background-color:black;
}

div#main,section#accessranking,footer
{
background-color:white;
}

.subhead,.subhead a{
color:white;
}



問題発生1


重いページで画面がチラつく
・「html表示」処理は、bodyタグを読み込んだ後、各タグを読み込んでいく
・bodyタグと各タグが同じ背景色なら全く気にならないが、異なる場合には影響が生じる場合もある
・今回のケースでは、一度、背景色を黒で読み込んだ後、subheadクラス以外の全ての背景色を白色で描画し直す処理が発生
・結果として、重いページでチラツキが目立つ

ページ読み込み時に「フワっ」とした感じのエフェクトでフェードインしながら表示

 閲覧数:566 投稿日:2015-06-10 更新日:2015-06-10

チラツキ防止


正確にはチラツキ防止ではなく、チラツキ誤魔化し
・「フワっ」と表示させることで、チラツキを表面上見えなくしようというもの
<script>
$('head').append(
'<style>body {display:none;}'
);
$(function() {
 $('body').fadeIn(500, function() {});
});
</script>



問題発生


チラツキは解消するも、新たな問題発生
・body {display:none;}の影響で、iframe内容が表示されなくなる

BBCode
・BBCodeエディタを使用する際、iframe箇所での競合が発生

今考えれば
・単にbodyタグにクラスを割り振ればよいだけの気もするが、その時は気が付かなかった


background-colorだけで背景色2色指定は不可能

 閲覧数:541 投稿日:2015-06-10 更新日:2015-06-10

bodyタグだけを使用して背景色2色指定


案1.グラデーション指定
案2.background-colorを併用


案1.グラデーション指定


背景色2色をグラデーションで表現
・グラデーションに詳しくないので、どうやったら背景色2色指定できるか分からなかった
・もしかして無理?


案2.background-colorを併用


背景色を2色に / 左側300pxを緑に、右側の残り全て(width指定なし)を白にしたい
背景色を2色にする方法


最終的に

 閲覧数:522 投稿日:2015-06-10 更新日:2015-06-10

スタートに戻る


そもそも、チラツキが発生していること自体が問題
・チラツキを見えなくする策を練るのではなく、発生しないような抜本的な対策を施すべき


最終的に


冒頭記述したマイナスマージンを適用することで解決
個人的にネガティブマージンは極力使用しないようにしているが、背に腹は変えられない

・解決するまで2日を要した


ツールチップ

bootstrap3で意図せず横スクロールバーが表示される場合は、containerクラスの入れ子を疑う



週間人気ページランキング / 4-18 → 4-24
順位 ページタイトル抜粋 アクセス数
1 16進数カラーコード / 2進数 25
2 Windows10で「Google Chrome」が常に最前面に表示される。「アクティブウィンドウ」が最前面で表示されない → 解決方法存在しない | Google Chrome(ブラウザ) 13
2 「マウスオーバー」「ロールオーバー」「ホバー」の違い | CSS 13
2 「Font Awesome 4」と「Font Awesome 5」の違い(Font Awesome バージョン4からのアップグレード) | Font Awesome(フォント) 13
3 Chromeデベロッパーツールで、スマホソースコードを確認したいが、USBデバッグ機能をどうしても有効にすることが出来ない | モバイルデザイン(デザイン) 11
4 RGB ⇔ Lab | 色変換(色) 10
5 血の色 / #b30000 / #360800 / #ff0000 | カラーコード(色) 9
6 Design 0 8
7 「Chrome拡張機能」開発中に遭遇したエラー | Chrome 拡張機能 7
8 「bgcolor」「background-color」「background」の違い | CSS 4
8 「z-index」効果を打ち消すスタイルシートは、「z-index:auto;」 4
8 Chrome でキャッシュを効かさない | Google Chrome(ブラウザ) 4
8 max-width: 100%の効果を打ち消すには、max-width: none; | CSS 4
9 「line-height」効果を打ち消すスタイルシートは、「line-height:normal; 3
9 「群青色」「瑠璃色」「ウルトラマリンブルー」の違い 3
10 iframe経由で読み込んでいるページへ直接アクセスした場合は、トップページへリダイレクト | HTML5(HTML) 2
10 ユーザー個別の設定情報が格納されているレジストリキーを削除 2
10 カラーコード / 色コード | カラーコード(色) 2
10 CSSで出来ないこと | CSS 2
10 RGBの種類 / ビットカラー | RGB(色) 2
2024/4/25 1:01 更新