在右上角显示一个小图像

时间:2013-08-16 05:12:06

标签: javascript jquery html css

好的,所以基本上这就是我想做的事情 - 因为我不是那种带CSS的向导 - 我需要一些输入......

  • 我想创建一个新类
  • 当此类应用于某个项目时(div或其他任何内容 - 显然具有适当的尺寸),顶部会显示一个小的可点击的预定义图像-Right corner inside this item

我应该怎么做?有什么想法吗?

3 个答案:

答案 0 :(得分:3)

<div class="hasicon">
    <img src="blah.jpg" class="icon" />
</div>

CSS:

.icon { display: none; }
.hasicon { position: relative; }
.hasicon .icon {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 32px;
    height: 32px;
    cursor: pointer;
}

jQuery:

$('body').on('click', '.hasicon > .icon', function() {
    // do something
});

要使用此功能,只需将类hasicon添加到div即可。没有班级的那些div将不会显示图标。

<强>更新

如果更符合您的要求,您可以尝试使用空跨度:

<div class="hasicon">
    <span></span>
</div>

CSS:

.hasicon { position: relative; }
.hasicon > span {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 32px;
    height: 32px;
    cursor: pointer;
    background: url('myImage.png') center no-repeat;
}

jQuery:

$('body').on('click', '.hasicon > span', function() {
    // do something
});

答案 1 :(得分:0)

图片未显示:

<div class="DivWithImage">
    <img src="blah.jpg" class="thumbIMG">
</div>

正在显示的图片:

<div class="DivWithImage">
    <img src="blah.jpg" class="thumbIMG shown">
</div>

CSS:

.DivWithImage .thumbIMG{
    position: absolute;
    right: 0px;
    top: 0px;
    display:none;
}
.DivWithImage .thumbIMG.shown{
    display:block;
}

然后,您需要使用javascript来应用或删除课程shown

答案 2 :(得分:0)

您可以将:after:before个伪选择器用于动态添加的类。

<强> HTML

<div class="something dynamicallyAdded"></div>

<强> CSS

.dynamicallyAdded {
    width: 300px;
    height: 400px;
    background-color: grey;
    position: relative;
}
.dynamicallyAdded:after {
    content:"";
    width: 100px;
    height: 100px;
    top: 0;
    right: 0;
    position:absolute;
    background-color: red;
} 

/* if you want the hover effect */
.dynamicallyAdded:hover:after {
    content:"";
    background-color: green;
}

Working Fiddle

Working Fiddle 带图片