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>