需求场景
当前端页面需要展示皮肤是否在使用、书籍是否阅读中、文件是否下载完成时,这时最直接的效果就是在盒子(div)左/右上角显示相应标签,不仅美观且实用。
这里以制作图片右上角标签为例,用CSS以最简单、直接的方式实现效果。
实现效果
实现思路
- 准备两个div(一个父容器,一个标签div),分别设置宽高,并设置相对布局。
- 使标签div居于父容器右上角,设置内容居中显示,设置背景和字体颜色,旋转该div。
- 将父容器设置overflow: hidden,实现父容器对标签div超出部分的遮挡,即实现了标签效果。
结构展示
代码示例
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>实现标签效果</title> <style> /* 外层div 设为relative 设置overflow: hidden实现对超出部分的 遮挡效果 */ .img-box { width: 200px; height: 400px; margin: 40px; overflow: hidden; position: relative; } /* 外层div 设为absolute,加以top、right等属性调整标签位置 设置height、line-height、text-align控制标签内容水平垂直居中 设置transform,旋转标签45度 */ .tag { width: 140px; height: 25px; top: 16px; right: -40px; text-align: center; line-height: 25px; transform: rotate(45deg); position: absolute; color: white; background: #4188ab; } /* 图片展示 设为block */ .img { display: block; width: 200px; height: 400px; } </style> </head> <body> <div class="img-box"> <div class="tag">正在使用</div> <img class="img" src="..."/> </div> </body> </html>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。