Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用CSS定位要显示在图像上的文本_Css_Web - Fatal编程技术网

使用CSS定位要显示在图像上的文本

使用CSS定位要显示在图像上的文本,css,web,Css,Web,我有下面的场景 <TD><a href="index-1.html" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image20','','images/m21.jpg',1)"><img src="images/m2.jpg" name="Image20" width="103" height="136" border="0">Home</a></TD>

我有下面的场景

<TD><a href="index-1.html" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image20','','images/m21.jpg',1)"><img src="images/m2.jpg" name="Image20" width="103" height="136" border="0">Home</a></TD>


我希望主文本显示在图像上方,例如,浮动,而图像实际上没有松开onmouseof和onmouseover位置,这是否可行?

我会将图像源作为标记的背景,并将其正确定位,以便为文本在上方“浮动”留出空间


我会将图像源作为标记的背景,并将其正确定位,以便为上面的文本“浮动”留出空间


#这个导航元素{
宽度:103px;
高度:136px;
显示:块;
文本对齐:居中;
垂直对齐:居中;
背景:url(images/m2.jpg);
}
#thisNavElement:悬停{
背景:url(images/m21.jpg);
}
家

#这个导航元素{
宽度:103px;
高度:136px;
显示:块;
文本对齐:居中;
垂直对齐:居中;
背景:url(images/m2.jpg);
}
#thisNavElement:悬停{
背景:url(images/m21.jpg);
}
家

在CSS中,您可以说

#my_anchor {
  background: url(images/m21.jpg);
}

然后只需在CSS中更改JavaScript/jQuery的背景即可

#my_anchor {
  background: url(images/m21.jpg);
}

然后只需在JavaScript/jQuery中更改背景,作为替代解决方案,您只需将文本放置在span标记中,然后使用css以任意方式定位它

<TD>
   <a href="index-1.html" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image20','','images/m21.jpg',1)">
      <img src="images/m2.jpg" name="Image20" width="103" height="136" border="0" />
      <span class="someclassname">Home</span>
   </a>
</TD>

作为另一种解决方案,您只需将文本放置在span标记中,然后使用css将其定位到您喜欢的任何位置

<TD>
   <a href="index-1.html" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image20','','images/m21.jpg',1)">
      <img src="images/m2.jpg" name="Image20" width="103" height="136" border="0" />
      <span class="someclassname">Home</span>
   </a>
</TD>


如果你把图像源作为背景,那么你必须设置标签的高度和宽度来显示整个图像。我正处于编辑和添加的中间,但是你绝对是。right@hunter...you应该补充的是,如果您将图像源作为背景,则必须将标记的高度和宽度设置为显示整个图像。我处于编辑和添加的中间位置,但是如果你关心验证,你绝对不可能把一个块级元素(div)放在一个内联元素(锚标签)中。除此之外,只是一个小的打字错误,你有一个跨度标签关闭一个分区。哦!我打算把那个div改成span。。谢谢你的评论-你完全正确。如果你关心验证的话,在内联元素(锚定标记)中放置块级元素(div)并不是很好的形式。除此之外,只是一个小的打字错误,你有一个跨度标签关闭一个分区。哦!我打算把那个div改成span。。谢谢你的评论-你完全正确。
<TD>
   <a href="index-1.html" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image20','','images/m21.jpg',1)">
      <img src="images/m2.jpg" name="Image20" width="103" height="136" border="0" />
      <span class="someclassname">Home</span>
   </a>
</TD>
<TD><a href="index-1.html" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image20','','images/m21.jpg',1)"><img src="images/m2.jpg" name="Image20" width="103" height="136" border="0"><div id='text'>Home</span></a></TD>
#id {
position: relative;
top: -20px;
z-index: 2;
}