LinkBox
ボックス全体をリンク化するis--linkBoxクラスを出力できる<Lism>コンポーネントです。
デフォルトでは<Lism isLinkBox>のエイリアスで、プロパティに合わせて専用処理を加えています。
Import
Section titled “Import”import { LinkBox, Link } from 'lism-css/react'; | Prop | 説明 |
|---|---|
href | リンク先を指定できます。hrefが指定されている場合はaタグとなり、なければdivとして出力されます。 |
<LinkBox>(.is--linkBox)は、主に次の2通りの使い方ができます。
<LinkBox>(.is--linkBox)を<a>タグにしてそのままリンクにする。<LinkBox>(.is--linkBox)を<div>にして、内部にa.u--overlayLinkを配置する。
LinkBox内部に別のリンクも配置するには、2 を採用してください。
1. <LinkBox>をaタグにして使う
Section titled “1. <LinkBox>をaタグにして使う”<LinkBox>にhrefを指定すると<LinkBox>自体が<a>タグになります。
↓
例
<LinkBox href='#linkbox-demo01' p='40' bgc='base' bdc='divider' bd bdrs='30'> <Text fz='xl' fw='bold'>Heading text</Text> <Text lh='s' mbs='20'> Lorem ipsum dolor sit, amet consectetur adipisicing elit, sed do eiusmod tempor. Non facere laudantium ex eos doloribus aut dolore nisi provident. </Text> <Text fz='s' c='text-2' ta='r' lh='1' mbs='10'>MORE →</Text></LinkBox>2. 内部にu--overlayLinkを配置する
Section titled “2. 内部にu--overlayLinkを配置する”内部のアンカー要素に.u--overlayLinkを併用してもボックス全体をリンクにすることができます。
この時、LinkBoxの内部に別のリンクも配置できます。
↓
例
Lorem ipsum dolor sit, amet consectetur adipisicing elit, sed do eiusmod tempor. Non facere laudantium ex eos doloribus aut dolore nisi.
<LinkBox p='40' bgc='base' bdc='divider' bd bdrs='30' trs hov='bxsh'> <Text fz='xl' fw='bold'> <a className='u--overlayLink' href='#linkbox-demo02'>Heading link text</a> </Text> <Dummy c='text-2' lh='s' mbs='20' /> <Text id='inner-link02' mbs='10'> <a href='#inner-link02' className='-hov:op'>Inner Link</a> </Text></LinkBox>Opt-in
Section titled “Opt-in”Tabキーでフォーカスした時のアウトラインをLinkBox全体に広げ
Section titled “Tabキーでフォーカスした時のアウトラインをLinkBox全体に広げ”u--overlayLinkでリンクを設置すると、Tabキーでフォーカスした時はアウトラインがボックス全体ではなくリンクテキスト部分のみになります。
もしこれをボックス全体に広げたい場合、以下のようなCSSを追記してください。
@supports selector(:has(*)) { .is--linkBox:has(.u--overlayLink:focus-visible) { outline: auto 1px; outline: auto 1px -webkit-focus-ring-color; } .u--overlayLink:focus { outline: 0; }}