2008-12-03 62 views
0

我在下面粘贴的代码是为了在中间2个链接上显示没有文字的图像,并返回到复位和第四个链接上的文本。我已经设置了显示:只有span标签没有,但它什么也没有做。无论如何,无论如何只是在不使用框架的情况下完成我的工作?css页面问题

编辑:例如

<html> 
    <head> 
     <style type="text/css"> 
       .class1{color:#000; background-image:url('1.jpg');} 
     .class1 span { display: none;} 
       .class2{color:#00f; background-image:url('2.jpg');} 
     .class2 span { display: none;} 
       .class3{color:#0f0; background-image:url('1.jpg');} 
     .class3 span { display: none;} 
       .class4{color:#f00;} 

     </style> 
    </head> 
    <body> 
     <script type="text/javascript"> 
       function sbox(divid, classname) 
       { 
         document.getElementById(divid).className=classname; 
       } 
     </script> 
     <div> 
     <a href="#" onclick="sbox('div1','class1');return false;">Reset</a><br/> 
       <a href="#" onclick="sbox('div1','class2');return false;">try here</a><br/> 
       <a href="#" onclick="sbox('div1','class3'); return false;">or here</a><br/> 
       <a href="#" onclick="sbox('div1','class4');return false;">or maybe here</a> 
     </div> 
     <div id="div1" class="class4"><span id="div1_text">Blah blah blah</span></div> 
    </body> 
</html> 
+0

我认为你需要修复问题的格式。 – 2008-12-03 12:09:46

+0

你错过了参考的例子。 – tvanfosson 2008-12-03 12:12:03

回答

3

rel属性应该描述的链路的关系,以当前文档。它应该具有here中描述的值之一。 DIV是块级分组元素,而SPAN是内联分组元素。 SPAN允许您将文本和标签分组在一起以达到某种目的(常见样式等),而无需更改标记流。

编辑:这个问题从我的下面改变了出来,所以上面看起来真的与当前的上下文无关。

你需要像@llandril说的那样给DIV一些大小。我会建议给DIV固定的宽度和高度 - 要么总是使用显示图像的类之一。如果要显示整个事物,请使用背景图像的宽度和高度。您可能还需要提供一些内容,但我不这么认为。

这是class1的样子,我想。我没有测试过这个。

/* in case color needs to apply to other elements */ 
    .class1 { color: #000; } 

    div .class1 { 
     background-image:url('1.jpg'); 
     width: 60px; 
     height: 30px; 
    } 

    div .class1 span { display: none;} 
+0

他不应该改变他的选择器的顺序。他希望用css class“class1”更改对象内的跨度显示,而不是显示位于跨度内的具有“class1”的对象。 他的选择器的顺序对他正在尝试做的是正确的。 – Illandril 2008-12-04 15:09:36

+0

我明白你的意思了。我想我误解了这个例子,并假设span也是class1。他实际上是匹配任何包含span的className class1的元素。我倾向于更准确地遵守我的规则。更新我的例子。 – tvanfosson 2008-12-04 15:50:47

0

rel属性通常不被许多UA(用户代理)使用,但是它指定了链接页面与当前页面的关系。

例如Mozilla使用prefetch relation预加载页面时出现了某些伪标准。 Google设置[用于设置?]其前几个结果以这种方式预取,因此这些页面应该加载更快。

其他例子是基于浏览器的导航栏(Opera有这些例如一个)链接到下一个,上,内容页面等,这也适用于<link>元素

1

DIV标签包围的块内容。 span标签类似,但包含内联内容。区别?您可以使用span来设置段落内的短语,但是div可以包装该段落并将其与其他段落分开。请参阅this的div,this的跨度。

一些意见后,现在就是,from the horse's mouth:

的DIV和SPAN元素,与id和class属性相结合,提供加入结构文档的常规机制。这些元素将内容定义为内联(SPAN)或块级(DIV),但不在内容上强加其他表示方式。因此,作者可以将这些元素与样式表,lang属性等一起使用,以根据自己的需要和口味调整HTML。

0

通常,属性REL和rev分别描述前向和后向指向的链接。例如,在列表分页中,您可以使用<a href="..." rel="next">Next</a><a href="..." rev="prev">Prev</a>

请参阅http://www.w3.org/TR/html401/types.html#type-links了解您可以使用的某些值。

其他人已经解释了span/div标签。实际上并没有多少使用span标签的情况,因为根据上下文,您通常可以使用emstrongcode等短语元素。因为当你的跨度走了它不具有任何内容

0

的DIV不显示背景图片。

添加非中断空间(& NBSP;)跨度后将给它的内容。