CSS border-block-start-color プロパティを使いこなして、ワンランク上のデザインを目指そう!

2024-04-02

CSS Miscellaneous: border-block-start-color

border-block-start-color は、要素のブロック方向の開始側の境界線の色を設定するプロパティです。ブロック方向は、縦書きの場合は左から右、横書きの場合は上から下となります。

詳細

border-block-start-color は以下の要素に適用されます。

  • インライン要素
  • ブロック要素
  • グリッドレイアウト要素
  • テーブルレイアウト要素
  • フローティング要素

border-block-start-color は以下の値を受け取ります。

  • <color>: カラー値
  • transparent: 境界線を透明にする
  • inherit: 親要素から値を継承する
  • initial: 初期値
  • revert: 要素のスタイル計算における初期値
  • revert-layer: 要素のスタイル計算における前のレイヤーの値

/* すべての要素のブロック方向の開始側の境界線の色を青色にする */
body {
  border-block-start-color: blue;
}

/* 特定の要素のブロック方向の開始側の境界線の色を緑色にする */
.my-element {
  border-block-start-color: green;
}

補足

  • border-block-start-color は、border-block-end-colorborder-inline-start-colorborder-inline-end-color と合わせて使用することで、要素のすべての境界線の色を設定することができます。
  • border-block-start-color は、border-color の省略形としても使用できます。
  • border-block-start-color は CSS3 で導入されたプロパティです。
  • すべてのブラウザで対応しているわけではありません。

補足:writing-mode の影響

writing-mode プロパティによって、ブロック方向は変化します。以下に、writing-mode の値と、それに応じた border-block-start-color の適用例を示します。

  • writing-mode: horizontal-tb (デフォルト): 横書き、上から下
  • writing-mode: vertical-lr: 縦書き、左から右

/* 横書きの場合 */
body {
  writing-mode: horizontal-tb;
  border-block-start-color: blue; /* 上部の境界線が青色になる */
}

/* 縦書き(左から右)の場合 */
body {
  writing-mode: vertical-lr;
  border-block-start-color: blue; /* 左側の境界線が青色になる */
}

/* 縦書き(右から左)の場合 */
body {
  writing-mode: vertical-rl;
  border-block-start-color: blue; /* 右側の境界線が青色になる */
}


border-block-start-color のサンプルコード

基本的な使い方

/* すべての要素の上部の境界線を青色にする */
body {
  border-block-start-color: blue;
}

/* 特定の要素の上部の境界線を緑色にする */
.my-element {
  border-block-start-color: green;
}

/* 上部の境界線を太くする */
.my-element {
  border-block-start-color: green;
  border-block-start-width: 5px;
}

/* 上部の境界線を破線にする */
.my-element {
  border-block-start-color: green;
  border-block-start-style: dashed;
}

writing-mode の影響

/* 横書きの場合 */
body {
  writing-mode: horizontal-tb;
  border-block-start-color: blue; /* 上部の境界線が青色になる */
}

/* 縦書き(左から右)の場合 */
body {
  writing-mode: vertical-lr;
  border-block-start-color: blue; /* 左側の境界線が青色になる */
}

/* 縦書き(右から左)の場合 */
body {
  writing-mode: vertical-rl;
  border-block-start-color: blue; /* 右側の境界線が青色になる */
}

複雑な例

/* 要素の上部の境界線を、要素の背景色に応じて変化させる */
.my-element {
  border-block-start-color: hsl(
    hue-rotate(
      calc(
        var(--hue) +
        (var(--saturation) * var(--lightness)) / 100
      )
    )
  );
}
  • 上記のコードはほんの一例です。
  • 詳しくは、以下の参考資料を参照してください。


border-top-color プロパティを使用する

border-block-start-color プロパティは、border-top-color プロパティと同じ役割を果たします。そのため、border-block-start-color プロパティに対応していないブラウザでは、border-top-color プロパティを使用して、要素の上部の境界線の色を設定することができます。

/* すべての要素の上部の境界線を青色にする */
body {
  border-top-color: blue;
}

border-color プロパティは、要素のすべての境界線の色を設定するプロパティです。このプロパティを使用して、要素の上部の境界線の色を設定することができます。

/* すべての要素の上部の境界線を青色にする */
body {
  border-color: blue;
}

border-style プロパティと border-width プロパティを使用して、要素の上部の境界線のスタイルと太さを設定することができます。

/* すべての要素の上部の境界線を太くする */
body {
  border-top-style: solid;
  border-top-width: 5px;
}

画像を使用して、要素の上部の境界線を表現することができます。

<div class="my-element">
  <img src="border.png" alt="Border" />
  ...
</div>

注意点

  • 上記の代替方法は、border-block-start-color プロパティと同じ機能を提供できない場合があります。
  • すべてのブラウザで同じように表示されない場合があります。

border-block-start-color プロパティは、新しいプロパティであるため、すべてのブラウザで対応しているわけではありません。そのため、代替方法を使用する必要がある場合があります。




ゲーム理論:ビジネス、政治、日常生活に潜む戦略的思考

ゲーム理論の基本的な要素は以下の3つです。プレイヤー: 意思決定を行う主体戦略: プレイヤーが選択できる行動の選択肢利得: プレイヤーが各戦略を選択したときの得られる利益ゲーム理論は、これらの要素を数学的なモデルを用いて分析することで、プレイヤーがどのような戦略を選択するのか、どのような結果になるのかを予測することができます。



CSSでセピア色の世界へようこそ!画像や要素をレトロに変身させる魔法の方法

CSSの「Filter Effects」機能の一つである「sepia()」は、画像や要素をモノクロ化し、茶褐色(セピア色)のトーンを適用する関数です。古い写真のようなレトロな雰囲気を演出したい場合などに効果的に使用できます。構文n は、セピア色の強さを表す数値です。0.0の場合は元の画像の色合いが維持され、1.0になると完全にセピア色になります。


CSS break-after プロパティを使いこなして、洗練されたデザインを実現する

break-after プロパティは、ページ、段組み、または領域の区切りを、指定された要素の後でどのように行うかを制御します。これは、印刷レイアウトや複雑なウェブページレイアウトを構築する際に役立ちます。可能な値auto: ブラウザのデフォルトの動作に従います。通常は、要素の後で区切りが発生しないことを意味します。


CSS line-style でWebページをより魅力的に:デザインアイデアとサンプルコード集

CSS の "Miscellaneous" カテゴリには、さまざまな要素を装飾するためのプロパティが含まれています。その中でも、"line-style" プロパティは、線やボーダーのスタイルを定義するために使用されます。"line-style" プロパティは、以下の値を設定できます。


CSS 名前空間:衝突を防いでスタイルを明確に

複数の XML 名前空間を混在させる場合、同じセレクター名が異なる意味を持つ可能性があります。例えば、svg 名前空間と mathml 名前空間の両方で circle という要素が存在します。名前空間を使用しなければ、circle というセレクターはどちらの要素にもマッチしてしまう可能性があります。



CSS Miscellaneous: user-selectプロパティの徹底解説

user-select プロパティは、ユーザーがテキストを選択できるかどうかを制御します。これは、ユーザーインターフェースの利便性を向上させたり、重要なコンテンツを保護したりするために使用できます。値auto: ユーザーがテキストを選択できます。これはデフォルト値です。


CSSの魔法:background-blend-modeでデザインをレベルアップ

background-blend-mode は、要素の背景画像と背景色、または複数の背景画像同士をどのように混合するかを制御する CSS プロパティです。 Photoshop などの画像編集ソフトでいう「描画モード」に相当します。使い方background-blend-mode は以下の要素に適用できます。


フロントエンドエンジニア必見!CSS align-tracks でワンランク上のレイアウト

align-tracks は、CSS Grid レイアウトにおける 組積軸 方向のグリッドトラックの配置を制御するプロパティです。これは、実験的な機能 であり、全てのブラウザでサポートされているわけではありません。適用対象align-tracks は、以下の条件を満たす要素にのみ適用されます。


:checked と JavaScript/jQuery で実現する、インタラクティブなWebページ

使い方:checked は、以下の形式で記述します。例えば、以下のコードは、チェックされたチェックボックスに赤い背景色を適用します。注意点:checked は、以下の点に注意する必要があります。チェックボックスやラジオボタン以外の要素には使用できません。


【CSS】::selection を使ってできること: 選択範囲のスタイルを自由自在にカスタマイズ

::selection は、以下の要素に対して適用されます。テキスト要素 (p, span, h1 など)入力欄 (input, textarea)画像やその他の非テキスト要素には適用されません。::selection で使用できる CSS プロパティは限られています。主なものは以下の通りです。