【问题标题】:issues placing text over an image (CSS, relative positioning)将文本放在图像上的问题(CSS,相对定位)
【发布时间】:2011-12-08 00:50:00
【问题描述】:

所以我的问题是这样的;我有一个图像菜单(4 张照片块),我想在每张照片的顶部显示一些文字。我以前做过,但由于某种原因,这次它全部变成了梨形。我不想将图像设置为 css 中的背景,因为我认为它们是内容并希望它们出现在标记中。

这是我做的css:

#club_menu{
position:relative;
padding:1px;
width:99.5%;
height:400px;
/*border: 1px solid #A424A9;*/
}
#club_menu a{
position:relative;
width:295px;    
}
#club_menu a h2{
position:absolute;
top:100px;
left:0;
width:100%;
}
#club_menu h2 span{
color:white;
font:bold 24px/45px Helvetica, sans-serif;
letter-spacing:-1px;
background-color:#A424A9;
filter:alpha(opacity=70);
opacity:0.7;
padding:10px;
}

和 HTML:

<div id="club_menu">
            <a href="#">
            <h2><span>Aquum Tuesday</span></h2>
            <img src="<?php bloginfo('template_directory'); ?>/images/menu_aquum.jpg" width="295" height="195" /> 
            </a>
            <a href="#">
            <h2><span>Movida Wednesday</span></h2>
            <img src="<?php bloginfo('template_directory'); ?>/images/menu_movida.jpg" width="295" height="195" />
            </a>
            <a href="#">
            <h2><span>Whisky Thursday</span></h2>
            <img src="<?php bloginfo('template_directory'); ?>/images/menu_whisky.jpg" width="295" height="195" />
            </a>
            <a href="#">
            <h2><span>Jalouse Tuesday</span></h2>
            <img src="<?php bloginfo('template_directory'); ?>/images/menu_jalouse.jpg" width="295" height="195" />
            </a>
            </div>

我已经玩了一个多小时了,标签到处都是。我的图像完美到位。有一些CSS技巧的人,请赐教。

非常感谢,

【问题讨论】:

    标签: css image css-position


    【解决方案1】:

    从 css 看来,图像并没有绝对定位在链接对象内添加 #club_menu img {position:absolute;顶部:0px;左:0px;}

    尝试使用 (display:block; 或 display:inline-block 如果您需要块彼此内联) 将链接元素的大小和宽度指定为块,并使用相对位置

    那么任何可以指定的子元素(h2,图像)位置都将绝对与链接相关。

    您很可能需要合并之前关于 z-index 的答案,以使文本覆盖图像。

    【讨论】:

    • 您可能还应该使用 display:block; 制作对象块元素;
    • 标签就这样完成了,现在我所有的图片都在左边。
    • 左边是什么?现在标签的位置是否与链接或图像正确相关?尝试将 a 元素的大小和宽度指定为块,位置相对,然后绝对指定的任何子(h2,图像)位置将相对于链接。
    • 好的,标签正确地位于正确图像的顶部。然而在图像形成一个 4 的正方形之前。它们现在都位于左侧,一个接一个地在页面下方完全超出了 club_menu div。
    • display:block 使元素成为块(不允许 html 紧挨着它) 内联块也是如此,它允许您的链接具有宽度和高度,但仍然是流布局的一部分w3schools.com/cssref/pr_class_display.asp
    【解决方案2】:

    【讨论】:

    • 您好,感谢您的回复,我尝试使用z-index,基本上结果是两个标签在正确的位置但在错误的图像上,另外两个完全不在地点。
    猜你喜欢
    • 2011-08-21
    • 1970-01-01
    • 2020-03-20
    • 1970-01-01
    • 2017-07-15
    • 1970-01-01
    • 2021-09-16
    • 1970-01-01
    相关资源
    最近更新 更多