这很难解释我的意思,所以看到这样的jsfiddle第一:http://jsfiddle.net/Gsggy/显示一个div仅当URL没有片段标识符
当用户点击1,格号1所示,同为别人,很简单。
然而,用户点击一个数字之前,没有格在那里,因为它依赖于在URL
的#值如何设置一个默认的div是有一个空白的网址,例如: www.jsfiddle.com但是当有人点击一个数字,使得它www.jsfiddle.com/#1
这很难解释我的意思,所以看到这样的jsfiddle第一:http://jsfiddle.net/Gsggy/显示一个div仅当URL没有片段标识符
当用户点击1,格号1所示,同为别人,很简单。
然而,用户点击一个数字之前,没有格在那里,因为它依赖于在URL
的#值如何设置一个默认的div是有一个空白的网址,例如: www.jsfiddle.com但是当有人点击一个数字,使得它www.jsfiddle.com/#1
事情是你不能真正的目标元素的方式来告诉它“做某事,而别人是目标”。
然而,这种困境有一些解决方法。一种解决方案是始终显示默认内容并显示上面的目标元素。
你可以使用这样一个事实,即在dom后面出现的元素通常被渲染到更早出现的节点之上。因此,您可以使用例如负顶部边距或绝对定位元素来覆盖默认内容。
提高你的HTML结构:
<div class="default" id="z">0</div>
<div id="a">1</div>
<div id="b">2</div>
<div id="c">3</div>
这个CSS不工作:
.default {
display: block;
background: #eff;
}
div + div {
margin-top: -102px;
}
div:target {
background: #eef;
display: block;
position: relative;
}
的缺点,以这种特殊的方式是,你需要知道你的默认内容的确切尺寸。
看到这个提琴:http://jsfiddle.net/Gsggy/4/
使用第n-的类型或最后的类型选择,使默认格在最后,我认为它会消失将在你的情况下工作
请注意不允许以数字开头的ID。另外请澄清,如果你的默认div应该是一个有id的元素或者它应该是一个额外的元素。 – 2012-07-26 11:50:42
这只是一个模型,我的实际股利有专有名称。 它应该是一个兄弟姐妹(所以#1#2和#3的兄弟姐妹),它可以有一个ID,但我不想在url中使用#default – Andy 2012-07-26 11:51:26