点击img,img右上角怎么添加一个类似√这样的标识呢?不用伪元素

发布于 2022-09-05 00:31:29 字数 1527 浏览 23 评论 0

1.用的bootstrap布局,开始我是打算将img与一个<span>√</span>用a包起来,用定位,让span相对于a定位。

                                <a href="#">
                                    <img src="img/zhangsan/1.jpg" class="img-responsive img-thumbnail"/>
                                    <span>√</span>
                                </a>

但是因为是响应式布局,所以其实外层的a的宽度是不确定的,然后span的位置就超过图片 了。如图:第一个是正常情况下的图标位置,第二个是分辨率减小的情况,怎么就让这个图标就定在img的右上角呢?
图片描述
图片描述

现在代码是这样的,怎么实现呢?考虑到兼容性,不用伪元素。

                        <div class="row">
                            <div class="col col-md-3 col-sm-6 col-xs-6">
                                <a href="#">
                                    <img src="img/zhangsan/1.jpg" class="img-responsive img-thumbnail"/>
                                </a>
                            </div>
                            <div class="col col-md-3 col-sm-6 col-xs-6">
                                <a href="#">
                                    <img src="img/zhangsan/2.jpg" class="img-responsive img-thumbnail"/>
                                </a>
                            </div>
                            </div>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

我们的影子 2022-09-12 00:31:29

受上面的启发,因为我的a的宽度是会随分辨率变化而变化,所以再包了一层,让div.imgBox的宽度刚刚好是里面img的宽度,这样再让span相对于imgBox定位,而不是相对于a定位就可以了。

<div class="col col-md-3 col-sm-6 col-xs-6 imgcol">
                                <a href="#">
                                    <div class="imgBox center-block">
                                        <img src="img/zhangsan/1.jpg" class="img-responsive img-thumbnail"/>
                                        <span>√</span>
                                    </div>
                                </a>
                            </div>
清晨说晚安 2022-09-12 00:31:29

你用元素设置display:inline-block;position:relative,把img和span包起来,span绝对定位即可,希望可以帮到你

徒留西风 2022-09-12 00:31:29

楼上正解,你a标签设置position:relative后,span标签设置position:absolute;top:0;right:0;就会出现在右上角,因为父元素设置了相对定位,绝对定位的子元素会相对父元素进行定位,所以不会超出图片。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文