【发布时间】:2012-08-18 02:33:16
【问题描述】:
我似乎无法让
我试图实现的效果实际上是将
如何使图例所在的边界区域完整?
【问题讨论】:
-
如果你真的需要图例 div,可以设置
display: none;。
我似乎无法让
我试图实现的效果实际上是将
如何使图例所在的边界区域完整?
【问题讨论】:
display: none;。
您可以将position:absolute 添加到legend。 (可选)将 position:relative 添加到 fieldset 以便您可以移动内容。
【讨论】:
你可以把它放在屏幕外,
position:absolute; left:-999em;
或者您最喜欢的与屏幕阅读器等兼容的偏移技术。 (也许研究样板的图像替换样式)
【讨论】:
试试这个,只需隐藏字段集边框并将元素包装在带边框的 div 中。 http://jsfiddle.net/hWZa6/15/
<div id="wrapper">
<fieldset>
<legend>Test</legend>
The top border is never fully visible, despite the legend being set <code>visibility: hidden</code>.
<div id="A">
<div id="B">Upon applying <code>visibility: hidden</code> this div becomes transparent, and the red div behind it is fully visible.</div>
</div>
</fieldset>
</div>
fieldset { border: none; }
#wrapper { border: 1px solid black; }
legend { display: block }
#A { background-color: red; width: 300px; height: 150px; padding: 10px;}
#B { background-color: blue; width: 400px; height: 100px;}
【讨论】:
<legend> 元素本身,并将其替换为另一个元素,如 之类的?
将此 CSS 用于 legend 元素。
legend { margin-left: -9999px; }
【讨论】:
fieldset 元素的上边框。具体来说,就是顶部边框上方的半高空间。
如果您不想或无法更改 HTML,并且不需要使图例文本可见,则可以关闭显示。
legend { display: none; }
如果您确实可以控制 HTML,那么@user1289347 的解决方案将起作用,尽管它需要添加包装器元素。
【讨论】: