请让我安静一会儿
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>图片展示--侧边显示详细信息</title>
<style>
div, ul, li, dl, dt, dd, img, a {
margin: 0;
padding: 0;
}
ul, li, dl, dt, dd {
list-style: none;
}
img {
border: 0;
width: 300px;
}
.demo {
margin: 0 auto;
overflow: hidden;
padding: 0 34px;
}
.orginImg li {
float: left;
margin-right: 5px;
position: relative;
margin-bottom:10px;
}
.orginImg li a {
display: block;
border: 2px solid #ccc;
}
.orginImg li div {
position: absolute;
top: 0;
left: 100%;
z-index: 22;
background: #ccc;
width: 305px;
height: 170px;
border: 2px solid #F00;
display: none;
}
.orginImg li div dl{
color:#fff;
font-weight:bold;
padding:10px;
}
.orginImg li div dl dt{
text-align:center;
}
.orginImg li div dl dd{
text-indent:2em;
}
</style>
</head>
<body>
<div class="demo" >
<ul class="orginImg" id="orginImg">
<li>
<a href="http://imooc.com"><img src="http://img.mukewang.com/52fd84630001d22603000170.jpg" /></a>
<div>
<dl>
<dt>学会html5 绝对的屌丝逆袭</dt>
<dd>本课程由浅入深,逐步推进,以示例为主线,详细完整地介绍HTML5的新功能与新特征</dd>
</dl>
</div>
</li>
<li>
<a href="http://imooc.com"><img src="http://img.mukewang.com/52fd84630001d22603000170.jpg" /></a>
<div>
<dl>
<dt>学会html5 绝对的屌丝逆袭</dt>
<dd>本课程由浅入深,逐步推进,以示例为主线,详细完整地介绍HTML5的新功能与新特征</dd>
</dl>
</div>
</li>
<li>
<a href="http://imooc.com"><img src="http://img.mukewang.com/52fd84630001d22603000170.jpg" /></a>
<div>
<dl>
<dt>学会html5 绝对的屌丝逆袭</dt>
<dd>本课程由浅入深,逐步推进,以示例为主线,详细完整地介绍HTML5的新功能与新特征</dd>
</dl>
</div>
</li>
<li>
<a href="http://imooc.com"><img src="http://img.mukewang.com/52fd84630001d22603000170.jpg" /></a>
<div>
<dl>
<dt>学会html5 绝对的屌丝逆袭</dt>
<dd>本课程由浅入深,逐步推进,以示例为主线,详细完整地介绍HTML5的新功能与新特征</dd>
</dl>
</div>
</li>
<li>
<a href="http://imooc.com"><img src="http://img.mukewang.com/52fd848d00017baa03000170.jpg" /></a>
<div>
<dl>
<dt>圆角水晶按钮制作</dt>
<dd>网页中的圆角按钮和宽度自适应按钮就这么轻松制作</dd>
</dl>
</div>
</li>
<li>
<a href="http://imooc.com"><img src="http://img.mukewang.com/52fd84b00001e9b803000169.jpg" /></a>
<div>
<dl>
<dt>导航条菜单的制作</dt>
<dd>30分钟教你轻松制作出各种形式的网站导航条菜单</dd>
</dl>
</div>
</li>
</ul>
</div>
<script type="text/javascript">
var lis = document.getElementById("orginImg").getElementsByTagName("li");
for (var i = 0; i < lis.length; i++) {
lis[i].onmouseover = showDetail;
lis[i].onmouseout = hideDetail;
if(i%3==2)
{
lis[i].getElementsByTagName("div")[0].style.left='auto';
lis[i].getElementsByTagName("div")[0].style.right='100%';
}
}
var lastLi;
lastLi = lis[lis.length - 1];
lastLi.getElementsByTagName("div")[0].style.left = ' auto ';
lastLi.getElementsByTagName("div")[0].style.right = '100%';
function showDetail() {
this.getElementsByTagName("div")[0].style.display = 'block';
}
function hideDetail() {
this.getElementsByTagName("div")[0].style.display = 'none';
}
</script>
</body>
</html>
慕仰5658343
这就是一整个屏幕的宽度,没什么影响一般都是这个值,这样百分百比px好是在屏幕小一点的时候也是一整个屏幕
慕粉2023498883
从零开始的,0表示第一个,当然你要取第二个就用[1],以此类推
慕丝5489023
居中啊
慕丝5489023
很少见
慕的地8666513
设一下css过渡,或用setInterval属性做一下,具体没做只是思路
qq_宝怪儿_0
帖代码
慕粉1626556005
设置为auto可以解决一些浏览器的兼容性问题
取经者
div3.getElemementsByTagName('a')[0].style.top = 160+'px';你的所有的.getElemementsByTagName都打错了,getElementsByTagName
rainy_li3676598
dky
getElementsByTagName("a")[0].style.top = 0
dky
越来越多了 ,实际上说妹子不适合的理由不知道哪儿来的
慕粉2346483473
.demo{position:relative;}
xunyingwl
一个通过,一个报错
qq_梦里_0
给li设置宽高就行了
lin琳琳bilibili
没事了。我后来自己解决了。谢谢
qq_陆陆杰_03991437
问题解决的时候麻烦动下手,采纳一下,否则你的问题会一直置顶,让别人难做呐
weibo_考早营_03695159
将img设置为display:block
Tang小溪
怎么不黏贴代码
a0a9l1
帮你改修正了下<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
.box{ width: 245px; height: 250px;overflow: hidden; float: left; position: relative;}
.box a{width: 245px; height: 250px; display:block;position: absolute; top: 225px;
background:#000000;filter:alpha(opacity=50);-moz-opacity:0.5;-khtml-opacity: 0.5; opacity: 0.5; color:#FFFFFF; }
</style>
</head>
<body>
<div class="box">
<img src="../img/img1.jpg" />
<a> 用于感冒引起的</br>头痛、发热、鼻塞、流涕、咽痛</a>
</div>
<div class="box">
<img src="../img/img2.jpg" />
<a> 用于感冒引起的</br>头痛、发热、鼻塞、流涕、咽痛</a>
</div>
<div class="box">
<img src="../img/img3.jpg" />
<a> 用于感冒引起的</br>头痛、发热、鼻塞、流涕、咽痛</a>
</div>
<script type="text/javascript">
var box =document.getElementsByClassName("box")
for (var i = 0 ; i<box.length; i++)
{
box[i].onmouseover = showMeg;
}
function showMeg(){
this.getElementsByTagName("a")[0].style.top = 0
}
</script>
</body>
</html>
把 for (var i = 0 ; i<box.length; i++;),改为 for (var i = 0 ; i<box.length; i++),去掉i++后的';'符号
把box[i].onmouseover = showMeg }多了个},进行去除,如此可恢复正常
宝慕林6162398
getElementsByTagName本身获取到的是一个数组,你要取得其中一个值,那么就需要知道他的索引,0索引就是相对于数组中的第一个数字
_紋_3549633
不同浏览器兼容性不同,为兼顾各种浏览器,写代码时最好把前缀都加上。
苍白的尾巴
getElementsByClassName 是获取class类名的方法,首先你得为这个元素取一个class名,然后因为class类名可能获取到多个元素,所以你要在后面加个getElementsByClassName[index],index就是你所需要的元素的位置,也就是在所有class名叫col元素排第几个
插上翅膀的梦
kafu123
是的 很萌哦哦哦哦哦哦
蚂蚁与干锅
好像没有必要一定要用while来在做一次循环,只要在上面的for里加一个判断就可以了吧?!
for (var i = 0; i < list.length; i++) {
list[i].onmouseover = showInfo;
list[i].onmouseout = hideInfo;
if((i+1)%4==0) {
list[i].getElementsByTagName("a")[0].style.left = "-100%";
}
}
逆光_0001
慕码人3910529
不行的话直接改成像素吧 估计不能设置超过100%
叮叮不铛铛
mzgwc
有两种解决办法,1,定义一个图片放大css属性,然后用鼠标onmouseover显示出来 2,直接得到 img 对象,然后修改