固定左サイドバーのレイアウトを作りたいのですが、
サイドバーとコンテンツ部分が重なってしまいます。。
タブレット以上の時は、offset-2が入るようにしているつもりなのですが、効いてくれません…
アドバイスいただけますと幸いです。
以下、コードです。
html(必要部分のみにしています)
<!DOCTYPE html> <html lang="ja"> <head> 省略 </head> <body> <div class="container-fluid"> <div class="row"> <!-- サイドバースタート --> <div class="col-md-2 px-0 bg-dark position-fixed" id="sticky-sidebar"> <div class="side-title d-flex align-items-center pl-2"> <a href="index.php">ヤドリギKey System</a> </div> <div class="side-nav" id="nav-bar"> <nav id="n"> <ul class="navbar-nav side-menu"> <li class=""> <a href="users/list.php" class="pl-4"><i class="fas fa-users"></i> ユーザー</a> </li> <li class=""> <a href="logs/list.php" class="pl-4"><i class="fas fa-door-open"></i> Unlock履歴</a> </li> <li class=""> <a href="account/list.php" class="pl-4"><i class="fas fa-desktop"></i> アカウント</a> </li> </ul> <div class="d-flex align-items-center border-top loginchu"> <div class="pl-4 mt-4"> <?php h($account_name); ?>さんログイン中 </div> </div> <div class="d-flex align-items-center logout"> <a href="" class="pl-4 mt-2" id="lnk_logout"><i class="fas fa-sign-out-alt"></i> ログアウト</a> </div> </nav> </div> </div> <!-- サイドバー終了 --> <div class="col-md-10 col-md-offset-2 mt-2" id="main"> <div id="wrapper"> <div class="mt-4 mb-4"> <h1>DashBoard</h1> </div> </div> </div> </div> </div> ※script系省略 </body> </html>
css
html { height: 100%; font-size: 14px; } body { height: 100%; margin: 0; } .container-fluid { height: 100%; background: #ffffff; } /*サイドバー*/ #sticky-sidebar { position: fixed; height: 100%; } .side-title { background: #33B1A9; height: 70px; color: #ffffff; font-size: 16px; } .side-title a { color: #ffffff; } .side-nav ul li { display: table; } .side-nav ul li a { display: table-cell; vertical-align: middle; height: 100%; color: #F4F4F4; } .navbar-nav li a:hover { background-color: #757575; } .navbar-nav li.selected { background-color: #757575; } .navbar-nav li { height: 50px; } #sm-title { display: none; } /*スマホの時*/ @media screen and (max-width: 768px) { #sticky-sidebar { display: none; } #nav-drawer { display:inline!important; } #sm-title { display:inline!important; } }
※コンテンツ部分 id=main部分を
<div class="offset-2 mt-2" id="main">
にすると、コンテンツが重ならずに表示されますが、スマホの時でもoffset-2が効いてしまって
隙間ができてしまいます。
やりたいのは、PCの時はサイドバーがあり、スマホの時は100%コンテンツで見せたいです。
何卒、よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/08 02:55