-1

我看到很多次尝试使用 CSS 隐藏文本,例如:

<a class="back">back</a>    
a.back { text-indent: -9999px; display:block; width: 100px; height: 50px; background: url(/images/back.png); }

我总是想知道为什么不使用:

a.back { color: transparent; display:block; width: 100px; height: 50px; background: url(/images/back.png); }

在我看来语义上是正确的,此外,当我尝试 text-indent 方法时,它会导致 iPad 显示中的错误:文本显示在锚标记左侧 99999px 处,并导致奇怪的不必要的水平滚动。第二个代码是否存在常见的已知问题或者可以使用?

4

3 回答 3

0

font-size: 0px;应该做的伎俩。如果你想让按钮比文本更小,你还需要添加line-height: 1em;或类似的东西。

于 2012-12-12T15:07:54.883 回答
0

使用 display 属性可以在 C# 中编辑元素的状态。

以下是人们使用的 4 个主要显示元素:

p.ex1 {display: none;}
p.ex2 {display: inline;}
p.ex3 {display: block;}
p.ex4 {display: inline-block;}

display:none表示相关标签根本不会出现在页面上(尽管您仍然可以通过 dom 与它进行交互)。其他标签之间不会有空间分配给它。visibility:hidden意味着与display:none不同,标签不可见,但在页面上为其分配了空间

但如果你想了解更多关于它们的信息,你可以访问这个网站:https ://www.w3schools.com/cssref/pr_class_display.asp

w3schools 以简单易懂的方式解释了许多语言。

于 2021-05-20T14:03:42.443 回答
-3

不要隐藏内容并完全依赖背景图像。

HTML 提供了一种将具有含义的图像(<img>元素)包含在文本内容中的方法,用于图像无法显示的情况(alt属性)。没有必要用样式表来伪造它。

<a class="back"><img alt="back" src="/images/back.png"></a>    

图标是内容,应该被这样对待。所有使用文本和背景图像的努力最终都是有限制的。该<img>元素是为此用例设计的。

于 2012-12-12T15:13:20.493 回答