Apple から学ぶCSSの画像置換

Apple から学ぶCSSの画像置換

CSSの画像置換

iPhone
先日Appleのサイトを見ていたらCSSの画像置換の仕方が違うことに気がつきました。
CSSの画像置換は大体下記のような記述が挙げられると思います。

<h1 class="hide-text">テキストテキスト</h1>
.hide-text{
  display: block;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}

大体は「text-indent」を使って文字を外側に飛ばすやり方かなと思います。

 

Apple が使っていたCSSの画像置換

<h1><span class="hide-text">テキストテキスト</span></h1>
.hide-text{
  overflow: hidden;
  position: absolute;
  height: 1px;
  width: 1px;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(0px 0px 99.9% 99.9%);
          clip-path: inset(0px 0px 99.9% 99.9%);
  padding: 0;
  border: 0;
}

「height」,「width」を1pxにして「clip」,「clip-path」で切り取るやり方です。
「position:absolute;」で高さも出ないので、いいですね。
ただし、階層が一つ深くなります。

さいごに

CSSの画像置換はSEOに大きく関わってくる箇所なので、情報はしっかり入れておきたいです。
参考になればと思います。