我找到this example并且能够复制here。
问题是它适用于除IE8
之外的所有浏览器。有人可以帮助它在IE8
中工作或做类似的事情。我甚至会采用jQuery
解决方案。
我有7张图片将显示在页面正文中,当用户翻阅图片时,应该会显示7或8个链接。有什么想法吗?
我也会满足于jQuery
解决方案。代码如下。我复制并粘贴了CSS
文件的内容
CSS
<style>
.view {
width: 300px;
height: 200px;
margin: 10px;
float: left;
border: 10px solid #fff;
overflow: hidden;
position: relative;
text-align: center;
box-shadow: 1px 1px 2px #e6e6e6;
cursor: default;
background: #fff url(../images/bgimg.jpg) no-repeat center center;
}
.view .mask, .view .content {
width: 300px;
height: 200px;
position: absolute;
overflow: hidden;
top: 0;
left: 0
}
.view img {
display: block;
position: relative
}
.view h2 {
text-transform: uppercase;
color: #fff;
text-align: center;
position: relative;
font-size: 17px;
padding: 10px;
background: rgba(0, 0, 0, 0.8);
margin: 20px 0 0 0
}
.view p {
font-family: Georgia, serif;
font-style: italic;
font-size: 12px;
position: relative;
color: #fff;
padding: 10px 20px 20px;
text-align: center
}
.view a.info {
display: inline-block;
text-decoration: none;
padding: 7px 14px;
background: #000;
color: #fff;
text-transform: uppercase;
box-shadow: 0 0 1px #000
}
.view a.info:hover {
box-shadow: 0 0 5px #000
}
.view-first img {
transition: all 0.2s linear;
}
.view-first .mask {
opacity: 0;
background-color: rgba(219,127,8, 0.7);
transition: all 0.4s ease-in-out;
}
.view-first h2 {
transform: translateY(-100px);
opacity: 0;
transition: all 0.2s ease-in-out;
}
.view-first p {
transform: translateY(100px);
opacity: 0;
transition: all 0.2s linear;
}
.view-first a.info{
opacity: 0;
transition: all 0.2s ease-in-out;
}
.view-first:hover img {
transform: scale(1.1);
}
.view-first:hover .mask {
opacity: 1;
}
.view-first:hover h2,
.view-first:hover p,
.view-first:hover a.info {
opacity: 1;
transform: translateY(0px);
}
.view-first:hover p {
transition-delay: 0.1s;
}
.view-first:hover a.info {
transition-delay: 0.2s;
}
</style>
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Untitled Page</title>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<!--[if (gte IE 6)&(lte IE 8)]>
<script type="text/javascript" src="selectivizr-min.js"></script>
<![endif]-->
<style type="text/css">
@import url('hoverStyle.css');
</style>
</head>
<body>
<div class="view view-first">
<img alt="Year In Review" src="YearInReview.png" />
<div class="mask">
<h2>Title</h2>
<p>Your Text</p>
<ul>
<li><a href="#" class="info">Link 1</a> </li>
<li><a href="#" class="info">Link 2</a> </li>
<li><a href="#" class="info">Link 3</a> </li>
</ul>
</div>
</div>
</body>
</html>
答案 0 :(得分:0)
您可以使用IE8.js
<强>用法:强> 如果您想支持浏览器IE7 +,请将此代码集成到您的head标签中:
<!--[if lt IE 7]>
<script src="http://ie7-js.googlecode.com/svn/version/2.0(beta3)/IE7.js" type="text/javascript"></script>
<![endif]-->
或者如果您下载了它,那么您可以使用以下代码:
<!--[if lt IE 7]>
<script src="ie7/IE7.js" type="text/javascript"></script>
<![endif]-->
您可以使用挤压来解决更多问题。您可以通过在第一个包含后添加另一行来执行此操作:
<script src="http://ie7-js.googlecode.com/svn/version/2.0(beta3)/IE7-squish.js" type="text/javascript">
或者
<script src="ie7/ie7-squish.js" type="text/javascript">
答案 1 :(得分:0)
当然,在页面上抛出modernizr.js,然后添加这种风格:
.no-boxshadow .view a.info:hover {
outline: 5px solid #aaa;
}
冲洗,重复,以获取IE8不支持的其余css3样式。
它看起来不会那么好,但话说再来一次,它是IE8。
答案 2 :(得分:0)
对于IE8,您可能需要首先制作一个它理解的CSS,然后如果您真的希望也可以增强过渡效果。 (我知道很难说/听到,重做它,这只是建议不要以js为基础接受100%的基础)
http://liveweave.com/g4MLe2(只有编辑在线我发现只使用真正的IE8支架)
看看它在真正的IE8中的含义:)
答案 3 :(得分:0)
我今天做了很多搜索,找到了解决方案并进行了调整以满足我的需求。这里是: http://www.incg.nl/blog/2008/hover-block-jquery/example/animate_hover.html
嗯,代码没有按照我想要的方式工作,因为我无法添加单独的链接,所以我调整了它并提出了这个:查看以下链接的来源:http://www.iwebarea.net/hoverTest2.html