首頁  >  文章  >  web前端  >  CSS用圖片換字多種方法

CSS用圖片換字多種方法

php中世界最好的语言
php中世界最好的语言原創
2018-03-20 16:31:061700瀏覽

這次帶給大家CSS用圖換字多種方法,CSS用圖換字的注意事項有哪些,下面就是實戰案例,一起來看一下。

前面的話

CSS以圖換字的技術,很久都沒人提起了。它是一種在h1標籤內,使用圖像替換文字元素的技術,使頁面在設計和可訪問性之間達到平衡。本文將詳細介紹CSS以圖換字的9種方法

文字隱藏

在h1標籤中,新增span標籤來保存標題內容,然後將其樣式設定為display:none

  <style>
    h1 {
      width: 64px;
      height: 64px;
      background: url(https://static.xiaohuochai.site/icon/icon_64.ico);
      font: 12px/1 '微软雅黑';
    }
    span {
      display: none;
    }
  </style>
  <h1>
    <span>小火柴的蓝色理想</span>
  </h1>

負縮排

#透過使用text-index:-9999px,這樣比較大的負縮排,讓文字移到頁面以外的區域

  <style>
    h1 {
      width: 64px;
      height: 64px;
      background: url(https://static.xiaohuochai.site/icon/icon_64.ico);
      font: 12px/1 '微软雅黑';
      text-indent:-9999px;
    }
  </style>
  <h1>小火柴的蓝色理想</h1>

負margin

透過使用margin-left:-2000px,讓盒子模型向左偏移2000px,然後將寬度設定為2064px,因此頁面中只顯示2064px中64px的部分。將圖片的背景設為右對齊,且不重複

  <style>
    h1 {
      width: 2064px;
      height: 64px;
      background: url(https://static.xiaohuochai.site/icon/icon_64.ico) right no-repeat;
      font: 12px/1 '微软雅黑';
      margin-left:-2000px;
    }
  </style>
  <h1>小火柴的蓝色理想</h1>

上padding

因為背景是顯示在padding-box區域中的,而文字是顯示在content-box區域中。所以,將height設定為0,用padding-top來取代height,並設定overflow:hidden。則,可以只顯示背景不顯示文字

  <style>
    h1 {
      width: 64px;
      padding-top: 64px;
      height:0;
      overflow:hidden;
      background: url(https://static.xiaohuochai.site/icon/icon_64.ico);
      font: 12px/1 '微软雅黑';
    }
  </style>
  <h1>小火柴的蓝色理想</h1>

0寬高

透過新增一個span標籤來保存文字內容,並將該標籤的寬高設置為0,再設定溢出隱藏即可

  <style>
    h1 {
      width: 64px;
      height: 64px;
      background: url(https://static.xiaohuochai.site/icon/icon_64.ico);
      font: 12px/1 '微软雅黑';
    }
    span{display:block;width: 0;height:0;overflow:hidden;}
  </style>
  <h1><span>小火柴的蓝色理想</span></h1>

文字透明

#設定文字的顏色為transparent,並設定font-size為1px,即減少行高的影響

  <style>
    h1 {
      width: 64px;
      height: 64px;
      background: url(https://static.xiaohuochai.site/icon/icon_64.ico);
      color:transparent;
      font-size:1px;
      }
  </style>
  <h1>小火柴的蓝色理想</h1>

偽元素

使用before偽元素,content設定為圖片的URL,在h1元素上設定溢出隱藏

  <style>
    h1 {
      width: 64px;
      height: 64px;
      overflow: hidden;
      font: 12px/1 '微软雅黑';
    }
    h1:before {
      content: url(https://static.xiaohuochai.site/icon/icon_64.ico);
      display: block;
    }
  </style>
  <h1>小火柴的蓝色理想</h1>

#正縮排

設定text-indent:100%,使文字縮排到父元素寬度區域的右側。然後配合設定white-space:nowrap和overflow:hidden,使文字不換行,並溢出隱藏。從而隱藏文字內容

  <style>
    h1 {
      width: 64px;
      height: 64px;
      background: url(https://static.xiaohuochai.site/icon/icon_64.ico);
      text-indent: 100%;
      white-space: nowrap;
      overflow: hidden;
      font: 12px/1 '微软雅黑';
    }
  </style>
  <h1>小火柴的蓝色理想</h1>

字體大小

透過設定font-size:0,可以將字體大小設定為0

  <style>
    h1 {
      width: 64px;
      height: 64px;
      background: url(https://static.xiaohuochai.site/icon/icon_64.ico);
      font-size:0;
    }
  </style>
  <h1>小火柴的蓝色理想</h1>

相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!

推薦閱讀:

CSS怪異盒模型與標準盒模型如何使用

CSS3中的transform功能詳解

#

以上是CSS用圖片換字多種方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn