CSS
It sets how far an element is moved from the side where blocks start, switching automatically with the writing direction—so in horizontal text it works like ‘distance from the top,’ and in vertical text it becomes the proper side, acting as a language-aware version of top
.
inset-block-start
まずは一言で
inset-block-start
は、要素を「段落が積み重なる向き(ブロック方向)」の“はじまり側”からどれだけ離すかを決めるプロパティです。
ふだん横書きのページなら「上からどれだけズラすか(= top
の仲間)」だと思ってOKです。
もう少しだけ正確に
「ブロック方向のはじまり側(block-start)」は、書き方で変わります。
横書き(普通の日本語・英語のページ)
はじまり側は 上
縦書き(writing-mode: vertical-rl
など)
はじまり側は 右(またはレイアウトに応じた側)
inset-block-start
は position
とセットで効きます。
position: absolute
/ fixed
親(包含ブロック)の「はじまり側」からの距離を決めます
position: relative
自分の元の位置から押し出す量を決めます(横書きなら下方向へズレます)
position: static
(初期値)
効きません
「物理的な方向(top/right/bottom/left
)」ではなく、言語や書字方向に合わせて自動で意味が合うのがポイントです。
使いどころ
将来、ページを縦書きや右から左の言語に切り替える可能性がある・多言語対応したい
top
などの「固定の方向名」を避けて、どの書き方でも意味が通る指定にしたい
最小サンプル(横書きページ想定)
<div class="stage">
<div class="badge">Hello</div>
</div>
.stage {
position: relative; /* 子の絶対配置の基準 */
height: 160px;
border: 1px solid #ccc;
}
.badge {
position: absolute;
inset-block-start: 12px; /* 横書きなら「上から12px」と同じ意味 */
inset-inline-start: 16px; /* 横書き・左から右なら「左から16px」に相当 */
}
よくあるつまずき
効かない
position
が static
のままになっていませんか?(relative
/ absolute
/ fixed
で)
top
と混在
論理プロパティ(inset-*
)と物理プロパティ(top
等)の併用は競合のもと。どちらかに統一しましょう。
両端の同時指定(例:inset-block-start
と inset-block-end
を両方)
組み合わせ次第で高さが引き伸ばされることがあります(絶対配置でサイズが auto
のときなど)。意図通りか確認を。
まとめショートハンド
inset-block
(start
と end
のセット)や、全方向まとめの inset
もあります。読みやすさ重視で使い分けを。
Home
サイトのトップページ
HTML (HyperText Markup Language)
ウェブページの基本的な構造を作成します。見出し、段落、リンク、画像などの要素を定義します。
class 属性
要素に CSSでスタイルを適用するためのクラス名を付ける際によく使われる。
div 要素
特定の意味(セマンティクス)を持たない汎用的なブロック要素で、ページのレイアウトやコンテンツのグループ化に利用される「区切りの箱」のような存在です。
CSS (Cascading Style Sheets)
ウェブページのデザインやレイアウトを設定します。色、フォント、レイアウトなどのスタイルを指定します。
border
ボックスの上下左右のボーダー(境界)のスタイル・太さ・色に対して同じ値をまとめて指定することができます。
bottom
要素の下端を基準にして、指定された距離分だけ上に位置を調整するプロパティです。
height
高さを指定する。
inset
要素の上下左右の位置をまとめて指定できるプロパティです。
inset-block
段の並ぶ向き(ブロック方向)への位置ズレを、書字方向に合わせて上下または左右として自動で解釈し、inset-block-start
/inset-block-end
をひとまとめに指定できるショートハンド。
inset-block-end
文字の流れに合わせて「ブロックの終わり側」(横書きなら下)からの距離を指定し、ボタンやバッジを端にぴったり配置できるプロパティ。
inset-inline-start
文章の向き(左から右/右から左)に合わせて、自動で「横方向のスタート側」の位置を決められるプロパティ。
left
左からの配置位置(距離)を指定する。
position
ボックスの配置方法(基準位置)が、相対位置か絶対位置かを指定する。
right
要素の位置を、右端からの距離で調整します。
top
top
は“上からどれだけズラすか”を決めるプロパティです。position
を relative
/absolute
/fixed
/sticky
にしたときの違いや、%の基準、動かない時のチェック方法を、短いコード例つきでやさしく解説します。
writing-mode
縦書き・横書きの別と行ブロックを並べる方向を指定します。
JavaScript
ウェブページにインタラクティブな動作を追加します。フォームの検証、アニメーション、リアルタイムのデータ処理などを行います。
PHP (Hypertext Preprocessor)
サーバー上で動作してデータベースと連携し、動的なWebページを簡単に作成できるスクリプト言語です。