CSS (カスケード スタイル シート) は、現代の Web デザインの基礎です。これは、HTML ドキュメントのプレゼンテーションを記述するために使用されるスタイル シート言語です。 HTML が Web ページの構造を定義するのに対し、CSS は Web ページの外観を定義するため、開発者は美しく、動的で応答性の高いデザインを作成できます。 CSS を使用する場合は、CSS を HTML 要素内にインラインで含めるか、 内に埋め込むことができます。 <head> のタグHTML ドキュメントのセクションを使用するか、外部スタイルシートをリンクします。その中でも、外部スタイルシートの使用は、HTML をクリーンに保ち、コンテンツをデザインから分離するため、最もスケーラブルで推奨されるアプローチです。</p> <p>たとえば、外部 CSS スタイルシートを使用する単純な HTML ファイルについて考えてみましょう。<br> </p> <div class="code" style="position:relative; padding:0px; margin:0px;"><div class="code" style="position:relative; padding:0px; margin:0px;"><pre><!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>CSS Demo</title> <link rel="stylesheet" href="styles.css"> </head> <body> <h1>Welcome to LearnCSS</h1> <p>CSS makes the web beautiful and engaging.</p> </body> </html> </pre><div class="contentsignin">ログイン後にコピー</div></div><div class="contentsignin">ログイン後にコピー</div></div> <p>styles.css ファイルでは、要素の外観を定義できます。<br> </p> <div class="code" style="position:relative; padding:0px; margin:0px;"><div class="code" style="position:relative; padding:0px; margin:0px;"><pre>body { font-family: Arial, sans-serif; background-color: #f9f9f9; color: #333; margin: 0; padding: 0; } h1 { color: #2c3e50; text-align: center; margin-top: 50px; } p { text-align: center; font-size: 18px; line-height: 1.5; } </pre><div class="contentsignin">ログイン後にコピー</div></div><div class="contentsignin">ログイン後にコピー</div></div> <p>この設定では、モダンなデザインの視覚的に魅力的な Web ページが作成されます。背景色は明るいグレーに設定され、テキストは読みやすいようにスタイル設定され、見出しは暗い色と中央揃えで強調されています。</p> <hr> <p><strong>ボックス モデルを理解する</strong> </p> <p>CSS の基本概念の 1 つはボックス モデルです。すべての HTML 要素は、コンテンツ、パディング、ボーダー、マージンの 4 つの部分で構成される長方形のボックスとして扱われます。これらのレイヤーを理解して操作することは、効果的なレイアウト設計に不可欠です。</p> <p>たとえば、次の CSS について考えてみましょう:<br> </p> <div class="code" style="position:relative; padding:0px; margin:0px;"><div class="code" style="position:relative; padding:0px; margin:0px;"><pre>div { width: 300px; padding: 20px; border: 2px solid #2c3e50; margin: 10px auto; background-color: #ecf0f1; text-align: center; } </pre><div class="contentsignin">ログイン後にコピー</div></div><div class="contentsignin">ログイン後にコピー</div></div> <p>このコードは <div> のスタイルを設定します。特定の幅の要素、コンテンツの周囲にスペースを作成するパディング、ボックスの輪郭を示す境界線、他の要素との間隔を空けるためのマージン、そして視覚的にアピールするための背景色です。マージンの自動値は、コンテナ内のボックスを水平方向の中央に配置します。</p> <p>対応する HTML は次のようになります:<br> </p> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre><div>This is a styled box.</div> </pre><div class="contentsignin">ログイン後にコピー</div></div> <p>ボックスは、明るい背景を持つ中央に配置された長方形として表示され、パディングと暗い境界線で囲まれています。</p> <hr> <p><strong>レスポンシブ デザインの作成</strong> </p> <p>今日のマルチデバイスの世界では、Web サイトがあらゆる画面サイズで適切に表示されることが重要です。 CSS にはメディア クエリが用意されており、これを使用して特定の画面サイズのスタイルを定義できます。これにより、デスクトップ、タブレット、スマートフォンにシームレスに適応するレイアウトを作成できます。</p> <p>レスポンシブ レイアウトの例を次に示します:<br> </p> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre>body { font-family: Arial, sans-serif; margin: 0; padding: 0; } .container { display: flex; flex-wrap: wrap; gap: 10px; padding: 20px; } .item { flex: 1 1 calc(33.333% - 20px); background-color: #3498db; color: white; padding: 20px; text-align: center; } @media (max-width: 768px) { .item { flex: 1 1 calc(50% - 20px); } } @media (max-width: 480px) { .item { flex: 1 1 100%; } } </pre><div class="contentsignin">ログイン後にコピー</div></div> <p>このコードは、デフォルトで各項目がコンテナの幅の 3 分の 1 を占める柔軟なグリッド レイアウトを定義します。小さい画面では、レイアウトは 2 列に調整され、非常に小さい画面では最終的に 1 列に調整されます。このレイアウトの HTML は次のようになります:<br> </p> <div class="code" style="position:relative; padding:0px; margin:0px;"><div class="code" style="position:relative; padding:0px; margin:0px;"><pre><!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>CSS Demo</title> <link rel="stylesheet" href="styles.css"> </head> <body> <h1>Welcome to LearnCSS</h1> <p>CSS makes the web beautiful and engaging.</p> </body> </html> </pre><div class="contentsignin">ログイン後にコピー</div></div><div class="contentsignin">ログイン後にコピー</div></div> <p>このコードは、ボタンの上にマウスを置くと、スムーズなトランジション効果を伴ってボタンの背景色を変更します。対応する HTML は次のとおりです:<br> </p> <div class="code" style="position:relative; padding:0px; margin:0px;"><div class="code" style="position:relative; padding:0px; margin:0px;"><pre>body { font-family: Arial, sans-serif; background-color: #f9f9f9; color: #333; margin: 0; padding: 0; } h1 { color: #2c3e50; text-align: center; margin-top: 50px; } p { text-align: center; font-size: 18px; line-height: 1.5; } </pre><div class="contentsignin">ログイン後にコピー</div></div><div class="contentsignin">ログイン後にコピー</div></div> <p>アニメーションを作成するには、@keyframes ルールを使用できます。例:<br> </p> <div class="code" style="position:relative; padding:0px; margin:0px;"><div class="code" style="position:relative; padding:0px; margin:0px;"><pre>div { width: 300px; padding: 20px; border: 2px solid #2c3e50; margin: 10px auto; background-color: #ecf0f1; text-align: center; } </pre><div class="contentsignin">ログイン後にコピー</div></div><div class="contentsignin">ログイン後にコピー</div></div> <p>このコードは、ボックスをアニメーション化して、跳ねる効果を作成します。 HTML は次のようになります:<br> </p> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre><div> <hr> <p><strong>結論</strong> </p> <p>CSS は、Web デザインの無限の可能性を解き放つ強力なツールです。視覚的に魅力的なレイアウトの作成から、応答性の高い動作やアニメーションの追加まで、CSS をマスターすると、単純な Web ページを魅力的でインタラクティブなエクスペリエンスに変えることができます。上記の例を試し始めて、コードを記述するたびにスキルが向上するのを確認してください。 CSS の世界はあなたの創造性を待っています。</p> </div> </pre><div class="contentsignin">ログイン後にコピー</div></div>