Pythonメモ torinaブログ

このブログはDjangoとBootstrap4で作成されました
ソースコード

Bootstrapで、ブログっぽいレイアウト

プログラミング関連 Bootstrap3
約324日前 2016年5月9日8:33
このような、ブログっぽいレイアウトを作ります。BootstrapのCSSのみで作ります。


右下のメインカテゴリーの↓を押すと、サブカテゴリーが表示されます。


デモページはこちら

http://torina.top/media/html/blog_ooAPhtA.html

全コード
<!DOCTYPE html>
<html lang="ja">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
    <title>ブログっぽいもの</title>
    <!-- Bootstrap -->
    <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet">

    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
    <!--[if lt IE 9]>
      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
  </head>
  <body>
    <!-- ナビゲーション -->
    <nav class="navbar navbar-default">
      <div class="container">
        <div class="navbar-header">
          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </button>
          <a class="navbar-brand" href="#">ブログ</a>
        </div><!--/.navbar-header -->
        
        <div id="navbar" class="navbar-collapse collapse">
          <ul class="nav navbar-nav">
            <li class="active">
              <a href="#">
                <span class="glyphicon glyphicon-home"></span> Home
              </a>
            </li>
            <li>
              <a href="#">
                <span class="glyphicon glyphicon-heart"></span> Mail
              </a>
            </li>
          </ul>
          <form action="" class="navbar-form navbar-right" role="search">
            <div class="form-group">
              <input type="text" id="quick-text" name="quick-text" class="form-control">
            </div>
            <button type="submit" class="btn btn-default">検索</button>
          </form>
        </div><!--/.nav-collapse -->
      
      </div><!-- /.container -->
    </nav><!-- ナビゲーション終わり -->
    
    <div class="container">
      <div class="row">

        <!-- メイン記事 -->
        <div class="col-xs-12 col-sm-9">
          <div class="panel panel-primary">
            <div class="panel-heading">
              <h2 class="panel-title">タイトル名</h2>
            </div>
            <div class="panel-body">
              <div class="row">
                <div class="col-xs-12 col-sm-6">
                  <img src="https://torina.top/media/images/capture_CO5KjDK.png" class="img-responsive">
                </div>
                <div class="col-xs-12 col-sm-6">
                  <p class="text-primary">カテゴリ名など</p>
                  <p class="text-primary">時間など</p>
                  <p class="text-primary">コメント数など</p>
                  <p class="text-primary">aaa</p>
                  <hr>
                  <a href="#" class="btn btn-primary btn-block btn-lg">続きを読む</a>
                </div>
              </div>
            </div>
          </div>
        </div><!-- メイン記事終わり -->

        <!-- サイドバー -->
        <div class="col-xs-12 col-sm-3">

          <!-- リンク -->
          <ul class="list-group">
            <li class="list-group-item active text-center">Link </li>
            <li class="list-group-item">
              <a href="#">リンクA</a>
            </li>
            <li class="list-group-item">
              <a href="#">リンクB</a>
            </li>
          </ul><!-- リンク終わり -->

          <!-- カテゴリー -->
          <ul class="list-group">
            <li class="list-group-item active text-center">カテゴリー </li>
            <li class="list-group-item">
              <a href="#">メインカテゴリ </a>
              <a class="pull-right" href="#sub1" data-toggle="collapse">
                <span class="caret"></span>
              </a>
            </li>
            <div class="collapse" id="sub1">
              <a href="#" class="list-group-item">サブカテゴリ1</a>
              <a href="#" class="list-group-item">サブカテゴリ2</a>
              <a href="#" class="list-group-item">サブカテゴリ3</a>
            </div>
          </ul><!-- カテゴリー終わり -->
        
        </div><!-- サイドバー終わり -->
      
      </div><!-- /.row -->
    </div><!-- /.container -->

    <!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
    <!-- Include all compiled plugins (below), or include individual files as needed -->
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
  </body>
</html>


今回はCDNを使用しています。
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>



サイドバーですが、list-groupを使用しています。
タイトル部分は<li class="list-group-item active text-center">をすることで、それっぽくなります。

          <!-- リンク -->
          <ul class="list-group">
            <li class="list-group-item active text-center">Link </li>
            <li class="list-group-item">
              <a href="#">リンクA</a>
            </li>
            <li class="list-group-item">
              <a href="#">リンクB</a>
            </li>
          </ul><!-- リンク終わり -->


サイドバーの、カテゴリーです。下矢印をクリックするとサブカテゴリを表示します。
また、下矢印ではなく、メインカテゴリの文字自体をクリックすると普通に遷移するつくりになっています。

          <!-- カテゴリー -->
          <ul class="list-group">
            <li class="list-group-item active text-center">カテゴリー </li>
            <li class="list-group-item">
              <a href="#">メインカテゴリ </a>
              <a class="pull-right" href="#sub1" data-toggle="collapse">
                <span class="caret"></span>
              </a>
            </li>
            <div class="collapse" id="sub1">
              <a href="#" class="list-group-item">サブカテゴリ1</a>
              <a href="#" class="list-group-item">サブカテゴリ2</a>
              <a href="#" class="list-group-item">サブカテゴリ3</a>
            </div>
          </ul><!-- カテゴリー終わり -->



<span class="caret"></span>は下矢印です。pull-rightで、右側に寄せていますね。
hrefはドロップダウンで開くid名を指定します。
今更ですが、caretの下矢印は小さくて見づらいので、「開く」やアイコン等を使うべきでしたね。
              <a class="pull-right" href="#sub1" data-toggle="collapse">
                <span class="caret"></span>
              </a>