图像边框悬停不起作用
Image border hover won't work
我有一张位于屏幕中央的图像,我希望周围有一个边框,当鼠标悬停在该图像上时会改变颜色。正如您在下面的代码中看到的那样,我正在尝试这样做,但问题是图像一直是 link 但没有边框,怎么了?
html 代码:
<div id="container">
<div id="content">
<div class="10Img">
<a href=""><img src="10Pimg.png" alt="10img" style="width:900px; height:200px"></a>
</div>
</div>
</div>
css代码:
#content{
padding-bottom: 200px;
position: absolute;
float: left;
left: 50%;
margin-left: -450px;
top: 200px;
}
#container{
height:100%;
}
.10Img{
border: 2px solid grey;
}
.10Img a:hover{
outline: 2px solid black;
}
试试这个:Demo
a img {
border: 2px solid grey;
}
a img:hover {
border: 2px solid black;
}
你的 css class 10Img
不起作用,因为 css class 名称不能以数字开头,参见:
Which characters are valid in CSS class names/selectors?
因此,如果您调用 class Img10
而不是 10Img
,它应该可以工作。
<div id="container">
<div id="content">
<div class="Img10">
<a href=""><img src="http://dummyimage.com/900x200/000/fff" alt="10img" style="width:900px; height:200px" /></a>
</div>
</div>
</div>
此外,您可能希望在 div
上使用 :hover
边框,而不是在 a
上:
#content{
padding-bottom: 200px;
position: absolute;
float: left;
left: 50%;
margin-left: -450px;
top: 200px;
}
#container{
height:100%;
}
.Img10{
border: 2px solid grey;
}
.Img10:hover{
outline: 2px solid black;
}
这是一个有效的 fiddle:
http://jsfiddle.net/k2Ld7yfe/
看到这个Demo
.Img{border: 2px solid grey;}
.Img a:hover{
outline: 2px solid black;}
注意:Class名称不能以整数开头。
命名规则参考This。
主要问题是您的 class 名称以数字字符开头 10Img
并以字母字符开头。
前任。我将它从 10Img 更改为 aImg
那你就可以使用
.aImg img {
border: 2px solid grey;
}
或仅
.aImg {
border: 2px solid grey;
}
我有一张位于屏幕中央的图像,我希望周围有一个边框,当鼠标悬停在该图像上时会改变颜色。正如您在下面的代码中看到的那样,我正在尝试这样做,但问题是图像一直是 link 但没有边框,怎么了?
html 代码:
<div id="container">
<div id="content">
<div class="10Img">
<a href=""><img src="10Pimg.png" alt="10img" style="width:900px; height:200px"></a>
</div>
</div>
</div>
css代码:
#content{
padding-bottom: 200px;
position: absolute;
float: left;
left: 50%;
margin-left: -450px;
top: 200px;
}
#container{
height:100%;
}
.10Img{
border: 2px solid grey;
}
.10Img a:hover{
outline: 2px solid black;
}
试试这个:Demo
a img {
border: 2px solid grey;
}
a img:hover {
border: 2px solid black;
}
你的 css class 10Img
不起作用,因为 css class 名称不能以数字开头,参见:
Which characters are valid in CSS class names/selectors?
因此,如果您调用 class Img10
而不是 10Img
,它应该可以工作。
<div id="container">
<div id="content">
<div class="Img10">
<a href=""><img src="http://dummyimage.com/900x200/000/fff" alt="10img" style="width:900px; height:200px" /></a>
</div>
</div>
</div>
此外,您可能希望在 div
上使用 :hover
边框,而不是在 a
上:
#content{
padding-bottom: 200px;
position: absolute;
float: left;
left: 50%;
margin-left: -450px;
top: 200px;
}
#container{
height:100%;
}
.Img10{
border: 2px solid grey;
}
.Img10:hover{
outline: 2px solid black;
}
这是一个有效的 fiddle: http://jsfiddle.net/k2Ld7yfe/
看到这个Demo
.Img{border: 2px solid grey;}
.Img a:hover{
outline: 2px solid black;}
注意:Class名称不能以整数开头。
命名规则参考This。
主要问题是您的 class 名称以数字字符开头 10Img
并以字母字符开头。
前任。我将它从 10Img 更改为 aImg
那你就可以使用
.aImg img {
border: 2px solid grey;
}
或仅
.aImg {
border: 2px solid grey;
}