需求:将下图中的tag右侧的小叉背景颜色改成边框颜色,只改变css
⇓
由于没有vue环境(还没有系统学过vue哈哈哈哈哈……),朋友给我发了iview地址:
https://www.iviewui.com/components/tag
直接在这里编辑样式吧~
先上结果(画红框是修改部分):
⇒
⇒
OK,咱们来看下这块儿的html结构
点一下代码中的"::after"部分,会发现,原来图中左侧文字(span)和右侧图标(i)中间的竖杠就是这部分,666……见下图中中间竖线(微微发蓝就是表示::after代码对应的部分,就是这一小条)
那么这里是如何实现的呢?我们再看下这块儿的css是咋写的:
解释一下:
:after表示当前对象是一个伪类,::after元素,表示伪元素。如何理解呢?对指定css选择器写了:after后,并写了content属性后,会在html源码中添加::after元素,表示伪元素。你就把它当成一个可以显示的html对象、DOM对象就可以了,只不过这个对象,在你自己的源码中是不存在的,是浏览器生成出来的,大概因为这个原因所以叫“伪类”吧……
宽度1px,表示当前内容宽度为1像素
采用绝对布局,上下间距均为0,这样当前元素就会纵向充满父容器,:after的父容器就是他伪类依托的外层对象,也就是".ivu-tag"这一层。(PS:top和bottom都置为同一个数也可以用来做纵向居中~不过个人不常用~~)
距父容器右侧22像素,嗯,所以这条红色的线就出现在了小叉和文字之间,因为图标宽度是固定的嘛,文字长度不确定,所以肯定是距右侧22像素,机智~
那么,如何在:after上修改,让其作为背景颜色呢?
让”线“的”距右侧距离“为0,并”宽度“为之前的”距右侧距离“就OK了,如下
emmm~看下效果~
OH SHIT ...,我的小叉叉呢?!!来咱们分析下(脑补模式开启):
i标签在div中,当div里面的一个内容(:after)范围大于i,此时:after和i是互相重叠的,而且,后出现的元素的层级在上一个元素的层级之上,所以造成了小叉不见了。
很自然的就会想到:如何让i在:after之上呢?首先这里需要说下:after的习性,:after总是会出现在宿主对象内部的最后,就是说无论你在宿主中加什么东西,:after永远出现在这些东西之后,并在宿主内部。
解说完毕,回到问题,想让:after出现在i之前是不可能了,那么只能提高i的层级了……
z-index这个属性就是用来指定当前对象层级(官方解释:”元素的堆叠顺序“)的属性,如果不指定,默认是0(好像是……),该属性只能在已定位元素上使用,即使用position的元素,具体解释请参看w3cschool解释。万幸,原始样式中已经指定了position: relative,咱们直接在i标签上加上z-index: 1,效果如下:
逗我呢?!!……冷静思考下,原来是颜色忘了置成白色了……汗,最终效果如下:
(i原始样式有透明度0.66的设置,最后为了美观改成了1,随喜好添加)
大白话总结下:
:after或:before伪类,就是字面上,给内容的最后或最前增加一部分内容,需要配合content属性使用(详情见w3cschool),多用于给一些元素增加重复的,相同的内容,如计量单位、图标、补充装饰物……
z-index能设置堆叠顺序,数越大越靠上层
::after是伪元素,:after是伪类
彩蛋&花絮>>>>>>
其实一开始试的时候,给i增加了float: right和height: 0样式……想着得先浮动起来……其实z-index是挑position属性,不挑是否浮动~~(单加float和height没有效果,不用试了……)
以上,请多多指教! m(_ _)m
'''本文欢迎转载,转载请注明出处,谢谢!!'''
原网址: 访问
创建于: 2020-03-01 20:20:28
目录: default
标签: 无
未标明原创文章均为采集,版权归作者所有,转载无需和我联系,请注明原出处,南摩阿彌陀佛,知识,不只知道,要得到
java windows火焰图_mob64ca12ec8020的技术博客_51CTO博客 - 在windows下不可行,不知道作者是怎样搞的 监听SpringBoot 服务启动成功事件并打印信息_监听springboot启动完毕-CSDN博客 SpringBoot中就绪探针和存活探针_management.endpoint.health.probes.enabled-CSDN博客 u2u转换板 - 嘉立创EDA开源硬件平台 Spring Boot 项目的轻量级 HTTP 客户端 retrofit 框架,快来试试它!_Java精选-CSDN博客 手把手教你打造一套最牛的知识笔记管理系统! - 知乎 - 想法有重合-理论可参考 安宇雨 闲鱼 机械键盘 客制化 开贴记录 文本 linux 使用find命令查找包含某字符串的文件_beijihukk的博客-CSDN博客_find 查找字符串 ---- mac 也适用 安宇雨 打字音 记录集合 B站 bilibili 自行搭建 开坑 真正的客制化 安宇雨 黑苹果开坑 查找工具包maven pom 引用地 工具网站 Dantelis 介绍的玩轴入坑攻略 --- 关于轴的一些说法 --- 非官方 ---- 心得而已 --- 长期开坑更新 [本人问题][新开坑位]关于自动化测试的工具与平台应用 机械键盘 开团 网站记录 -- 能做一个收集的程序就好了 不过现在没时间 -- 信息大多是在群里发的 - 你要让垃圾佬 都去一个地方看难度也是很大的 精神支柱 [超级前台]sprinbboot maven superdesk-app 记录 [信息有用] [环境准备] [基本完成] [sebp/elk] 给已创建的Docker容器增加新的端口映射 - qq_30599553的博客 - CSDN博客 [正在研究] Elasticsearch, Logstash, Kibana (ELK) Docker image documentation elasticsearch centos 安装记录 及 启动手记 正式服务器 39 elasticsearch 问题合集 不断更新 6.1.1 | 6.5.1 两个版本 博客程序 - 测试 - bug记录 等等问题 laravel的启动过程解析 - lpfuture - 博客园 OAuth2 Server PHP 用 Laravel 搭建带 OAuth2 验证的 RESTful 服务 | Laravel China 社区 - 高品质的 Laravel 和 PHP 开发者社区 利用Laravel 搭建oauth2 API接口 附 Unauthenticated 解决办法 - 煮茶的博客 - SegmentFault 思否 使用 OAuth2-Server-php 搭建 OAuth2 Server - 午时的海 - 博客园 基于PHP构建OAuth 2.0 服务端 认证平台 - Endv - 博客园 Laravel 的 Artisan 命令行工具 Laravel 的文件系统和云存储功能集成 浅谈Chromium中的设计模式--终--Observer模式 浅谈Chromium中的设计模式--二--pre/post和Delegate模式 浅谈Chromium中的设计模式--一--Chromium中模块分层和进程模型 DeepMind 4 Hacking Yourself README.md update 20211011
Laravel China 简书 知乎 博客园 CSDN博客 开源中国 Go Further Ryan是菜鸟 | LNMP技术栈笔记 云栖社区-阿里云 Netflix技术博客 Techie Delight Linkedin技术博客 Dropbox技术博客 Facebook技术博客 淘宝中间件团队 美团技术博客 360技术博客 古巷博客 - 一个专注于分享的不正常博客 软件测试知识传播 - 测试窝 有赞技术团队 阮一峰 语雀 静觅丨崔庆才的个人博客 软件测试从业者综合能力提升 - isTester IBM Java 开发 使用开放 Java 生态系统开发现代应用程序 pengdai 一个强大的博主 HTML5资源教程 | 分享HTML5开发资源和开发教程 蘑菇博客 - 专注于技术分享的博客平台 个人博客-leapMie 流星007 CSDN博客 - 舍其小伙伴 稀土掘金 Go 技术论坛 | Golang / Go 语言中国知识社区
最新评论