Bootstrap - ブログRTLデモ

概要

こんにちは、Web開発者志望の方々!今日は、Bootstrapの世界に踏み込み、美しいブログをRTL(右から左へのレイアウト)サポート付きで作成する興奮人心的な旅に出かけます。新しいことに慣れていない方も心配しないでください。幼稚園の先生が空がなぜ青いのか説明するように、私がそれぞれの手順を忍耐強く案内します。さあ、飛び込みましょう!

Bootstrap-Blog RTL Demo

ブログとは?

コードを書く前に、ブログとは何かを理解しましょう。デジタルの日記を思い浮かべてください。そこであなたの考えや経験、猫の動画を世界と共有できます。これがブログの本質です!新しい投稿が最初に表示される逆時系列順で投稿(「投稿」と呼ばれる)が表示されるウェブサイトです。

では、開発者の帽子をかぶり、Bootstrapを使って自分のブログを作成しましょう!

プロジェクトの設定

まず第一に、プロジェクトを設定する必要があります。コンピュータ上に新しいフォルダーを作成し、「bootstrap-blog-rtl」と名付けます。このフォルダーの中にHTMLファイル「index.html」を作成し、お気に入りのテキストエディタで開きます。

基本的なHTML構造から始めましょう:

<!DOCTYPE html>
<html lang="en" dir="rtl">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>私の素晴らしいRTLブログ</title>
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.rtl.min.css" rel="stylesheet">
</head>
<body>
<h1>私の素晴らしいRTLブログへようこそ!</h1>

<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"></script>
</body>
</html>

これを分解すると:

  1. <html>タグのdir属性を「rtl」に設定して、右から左へのレイアウトを有効にします。
  2. Bootstrap CSSファイルとRTLバージョンのBootstrap CSSをインクルードします。
  3. シンプルな<h1>タグを追加してページをテストします。
  4. 最後に、Bootstrap JavaScriptバンドルをボディの終わりにインクルードします。

ナビゲーションバーの作成

ブログにナビゲーションバーを追加しましょう。Bootstrapのナビバーコンポーネントを使います:

<nav class="navbar navbar-expand-lg navbar-light bg-light">
<div class="container-fluid">
<a class="navbar-brand" href="#">私のブログ</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">ホーム</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">について</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">連絡先</a>
</li>
</ul>
</div>
</div>
</nav>

このコードは、ブランド名と3つのナビゲーションリンクを持つレスポンシブなナビバーを作成します。navbar-expand-lgクラスは、小さなスクリーンではナビバーがハンバーガーメニューに折り畳まれることを保証します。

ブログレイアウトの作成

ブログのメインレイアウトを作成しましょう。Bootstrapのグリッドシステムを使って2列レイアウトを作成します:

<div class="container mt-4">
<div class="row">
<div class="col-md-8">
<!-- ブログ投稿ここに配置 -->
</div>
<div class="col-md-4">
<!-- サイドバーコンテンツここに配置 -->
</div>
</div>
</div>

これにより、ブログ投稿用の広い列とサイドバーコンテンツ用の狭い列が作成されます。

ブログ投稿の追加

メインコンテンツエリアにサンプルブログ投稿を追加しましょう:

<div class="col-md-8">
<article class="blog-post">
<h2 class="blog-post-title">サンプルブログ投稿</h2>
<p class="blog-post-meta">2023年1月1日 by <a href="#">マーク</a></p>
<p>これはサンプルブログ投稿です。テキスト、画像、他のHTML要素を含むことができます。</p>
<hr>
</article>

<article class="blog-post">
<h2 class="blog-post-title">別のブログ投稿</h2>
<p class="blog-post-meta">2023年2月15日 by <a href="#">ヤコブ</a></p>
<p>これは別のサンプルブログ投稿です。好きなだけ追加できます!</p>
<hr>
</article>
</div>

各ブログ投稿は、セマンティックHTMLのための<article>タグでラップされています。Bootstrapのタイポグラフィクラスを使って投稿タイトルとメタ情報をスタイル設定します。

サイドバーコンテンツの追加

サイドバーにコンテンツを追加しましょう:

<div class="col-md-4">
<div class="p-4 mb-3 bg-light rounded">
<h4 class="font-italic">について</h4>
<p class="mb-0">私のブログへようこそ!ここでは、Web開発、猫、そして人生の意味についての考えを共有しています。</p>
</div>

<div class="p-4">
<h4 class="font-italic">アーカイブ</h4>
<ol class="list-unstyled mb-0">
<li><a href="#">2023年3月</a></li>
<li><a href="#">2023年2月</a></li>
<li><a href="#">2023年1月</a></li>
</ol>
</div>
</div>

これにより、「について」セクションと「アーカイブ」リストがサイドバーに追加されます。

RTL対応の強化

ブログはすでにRTL対応していますが、Bootstrap RTL CSSを先ほどインクルードしたためです。しかし、RTLレイアウトをさらに強化するためのカスタムCSSを追加しましょう:

<style>
body {
text-align: right;
}
.navbar-nav {
margin-right: auto;
margin-left: 0 !important;
}
.blog-post-meta {
text-align: left;
}
</style>

これをHTMLの<head>セクションに追加します。これにより、テキストが右寄せになるようにし、ナビバー項目が左(RTLでは右)に寄せられ、ブログ投稿のメタ情報が左寄せになるようにします。

結論

おめでとうございます!Bootstrapを使って基本的なRTLブログレイアウトを作成しました。以下の表に、私たちが使用した主なコンポーネントをまとめます:

コンポーネント 目的
ナビバー ナビゲーションメニュー
グリッドシステム ページレイアウト
タイポグラフィクラス テキストスタイル
ユーティリティクラス スペースと背景

これが apenas 開始です。ブログにさらにBootstrapコンポーネントを追加したり、コメントシステムを実装したり、甚至コンテンツ管理システムを統合したりすることができます。

Web開発はレゴブロックで建てるのと同じです - 基本から始めて、すぐにマスターピースを作成するようになります。練習を続け、好奇心を持ち、最も重要な的是、楽しむことです!

未来のWeb魔術師たち、お楽しみください! ?‍♂️?

Credits: Image by storyset