GitHub にはアラート記法という非常に便利な記法が存在します。
> [!NOTE] > Highlights information that users should take into account, even when skimming.
のように書くと、以下のように表示されます。
このアラート記法をはてなブログで再現してみました。
Note
Highlights information that users should take into account, even when skimming.
Tip
Optional information to help a user be more successful.
Important
Crucial information necessary for users to succeed.
Warning
Critical content demanding immediate user attention due to potential risks.
Caution
Negative potential consequences of an action.
どうでしょうか?いい感じでしょう??
実装方法
はてなブログ側では [!NOTE]
といった特殊記法を実装する場合、jsを作って読み込む必要があります。今回は少し面倒くさかったので引用内に p タグを用意することで実現しました。
> <p class="note">Note</p> > Highlights information that users should take into account, even when skimming. > <p class="tip">Tip</p> > Optional information to help a user be more successful. > <p class="important">Important</p> > Crucial information necessary for users to succeed. > <p class="warning">Warning</p> > Critical content demanding immediate user attention due to potential risks. > <p class="caution">Caution</p> > Negative potential consequences of an action.
これらの pタグのクラスによってスタイルを出し分けています。引用の左バーは :has
を使って色を変えています。
&:has(p.note)::before { background-color: $blockquote-color-note; }
また、アイコンは SVG を base64 に変換して mask-image
で描画しています。mask
を使うのは色を変更するためです。
p.note { &::before { content: ""; width: 1rem; height: 1rem; padding-right: .5rem; display: inline-block; mask-size: 1.5cap; mask-repeat: no-repeat; mask-image: url($blockquote-image-note); background-color: $blockquote-color-note; } color: $blockquote-color-note; }
SCSS 公開しています
ご自由にどうぞ。