CSS图库

时间:2012-12-10 00:35:46

标签: html css

我的图片库在滚动时工作正常,虽然在图片放大的部分,我希望图库中的第一个图像自动出现在那里,此刻它只是显示一个空白框,直到你悬停在图像上。

<!DOCTYPE html>
<html lang="en">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" type="text/css" href="css.css"/>
<title>Welcome!</title>

</head>
<div id="wrapper">
<body>
<div id="header"> 
<div id ="logo">
<embed src="Media/Images/logo.svg" type="image/svg+xml" />
</div>

<div id="icons">
    <img src="Media/Images/EnvelopeIcon.png" alt="Envelope Icon" height="25" width="30">
    <p>M015734a@student.staffs.ac.uk</p>
    <div class="clear">     
    </div>
    <img src="Media/Images/PhoneIcon.png" alt="Envelope Icon" height="25" width="30" />
    <p> 07904921417</p>
    <div class="clear">     
    </div>
    <img src="Media/Images/HouseIcon.png" alt="Envelope Icon" height="25" width="30">
        <p>Stafford, UK</p>
    <div class="clear">     
    </div>              
<div class="clear">     
</div>
</div>
</div>

<nav>
<div id ="NavBar">
     <div id="Nav1">
     <div id="Triangle1"></div>
    <a href="E:/Program%20Files/Dropbox/Corsair%20Backup/Media%20For%20The%20Web/Assignment%20Part%202/Index.html"><h2>About Me</h2></a>
    </div>
    <div id="Nav2">
    <div id="Triangle2"></div>
    <a href="E:/Program%20Files/Dropbox/Corsair%20Backup/Media%20For%20The%20Web/Assignment%20Part%202/Education.html"><h2>Education</h2></a>
    </div>
    <div id="Nav3">
    <div id="Triangle3"></div>
    <a href="E:/Program%20Files/Dropbox/Corsair%20Backup/Media%20For%20The%20Web/Assignment%20Part%202/Portfolio.html"><h2>Portfolio</h2></a>
    </div>
    <div id="Nav4">
    <div id="Triangle4"></div>
    <a href="E:/Program%20Files/Dropbox/Corsair%20Backup/Media%20For%20The%20Web/Assignment%20Part%202/Interests.html"><h2>Interests</h2></a>
    </div>
    <div id="Nav5">
    <div id="Triangle5"></div>
    <a href="E:/Program%20Files/Dropbox/Corsair%20Backup/Media%20For%20The%20Web/Assignment%20Part%202/Contact.html"><h2>Contact Me</h2></a>
    </div>
</div>
</nav>
<article>
<section id = "content">
<h1>Portfolio Work</h1>
<div class="gallerycontainer">
<a class="thumbnail"><img src="Media/Images/Tardis.bmp" width="225px" height="125px" border="0" /><span><img src="Media/Images/Tardis.bmp" width="750px" height="450px"/><br />3DS Tardis Model.</span></a>
<br />
<a class="thumbnail"><img src="Media/Images/Main Station.png" width="225px" height="125px" border="0" /><span><img src="Media/Images/Main Station.png" width="750px" height="450px" /><br /></span></a>

<br />

<a class="thumbnail"><img src="Media/Images/Claymation1.JPG" width="225px" height="125px" border="0" /><span><img src="Media/Images/Claymation1.JPG" width="750px" height="450px"/><br />Sushi for dinner anyone?</span></a> 
<br/>

<a class="thumbnail"><img src="Media/Images/DSC_0245.jpg" width="175px" height="125px" border="0" /><span><img src="Media/Images/DSC_0245.jpg" width="500px" height="450px"/><br />Run wild with horses.</span></a>

<br />

<a class="thumbnail"><img src="Media/Images/DSC_0043 (3).JPG" width="225px" text-align="center" height="125px" border="0" /><span><img src="Media/Images/DSC_0043 (3).JPG" width="750px" height="450px"/><br />Run wild with horses.</span></a>

</div>
</section>
</section>
</article>
</div>
<footer>
</footer>
</body>
</html>


.gallerycontainer{
position: relative;
height: 250px;
/*Add a height attribute and set to largest image's height to prevent overlaying*/
}

.thumbnail img{
border: 1px solid white;
margin: 0 5px 5px 0;
}

.thumbnail:hover{
background-color: transparent;
}

.thumbnail span{ /*CSS for enlarged image*/
position: absolute;
background-color: lightyellow;
padding: 5px;
left: -1000px;
visibility: hidden;
color: black;
text-decoration: none;
}

.thumbnail span img{ /*CSS for enlarged image*/
padding: 2px;
}

.thumbnail:hover span{ /*CSS for enlarged image*/
background-color: #333;
visibility: visible;
top: 0;
left: 250px; /*position where enlarged image should offset horizontally */
z-index: 50;
}

1 个答案:

答案 0 :(得分:0)

我不会隐藏第一张图片,但会给它一个低z-index,以便其他图像漂浮在它上面。这只适用于图像尺寸相同的情况。

HTML

<div class="gallerycontainer">
    <a class="thumbnail"><img src="Media/Images/Tardis.bmp" width="225px" height="125px" border="0" /><span class="first"><img src="Media/Images/Tardis.bmp" width="750px" height="450px"/><br />3DS Tardis Model.</span></a>
<br />
<a class="thumbnail"><img src="Media/Images/Main Station.png" width="225px" height="125px" border="0" /><span><img src="Media/Images/Main Station.png" width="750px" height="450px" /><br /></span></a>

<br />
   

CSS

.thumbnail:hover span, .thumbnail span.first{ /*CSS for enlarged image*/
background-color: #FFF;
visibility: visible;
top: 0;
left: 250px; /*position where enlarged image should offset horizontally */
z-index: 50;
}

.thumbnail span.first
{
    z-index: 10 !important; /*Lower z-index for first one so others appear above it */
 }

<强>更新

从你的小提琴代码中你已经错过了实现这两个重要的事情:

  1. 请注意这里的两个选择器(我的CSS代码段的第一行):.thumbnail:hover span, .thumbnail span.first。您只有原始选择器。 - 这与“悬停”跨度
  2. 的“第一”范围应用相同的样式
  3. 领先的“。”在.thumbnail span.first的代码中缺少 - 这会调整“第一个”范围的z-index,以便其他范围显示在其上方。
  4. 更新2

    跨度需要背景颜色来遮盖第一张图像的文本。此外,如果图像具有透明度,但没有背景颜色,则会显示第一张图像。更新小提示显示了这一点。

    Example Fiddle