首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么我看不到我的before伪元素和idk为什么after元素延伸超过<a>元素

在前端开发中,伪元素是指通过CSS选择器来创建的虚拟元素,它们不是DOM树的一部分,但可以通过CSS样式进行控制和定位。常见的伪元素有before和after。

  1. before伪元素:before伪元素用于在目标元素的内容之前插入一个虚拟元素。它可以用来添加装饰性的内容或图标等。在使用before伪元素时,需要设置content属性来指定要插入的内容。
  2. after伪元素:after伪元素用于在目标元素的内容之后插入一个虚拟元素。它也可以用来添加装饰性的内容或图标等。同样地,在使用after伪元素时,需要设置content属性来指定要插入的内容。

根据你的描述,你无法看到before伪元素和after伪元素的可能原因有以下几种:

  1. CSS选择器错误:请确保你正确地使用了before和after伪元素的CSS选择器。通常情况下,它们的选择器分别为:before和:after。
  2. 内容为空:如果你没有设置content属性或将其设置为空,那么before和after伪元素将不会显示任何内容。请检查你的CSS代码,确保设置了合适的content属性。
  3. 定位错误:如果你没有正确地为before和after伪元素设置定位属性,它们可能会被默认定位在目标元素的内部或其他位置,导致无法显示。请检查你的CSS代码,确保为伪元素设置了正确的定位属性,如position、top、left等。

关于为什么after元素延伸超过<a>元素的问题,可能是由于以下原因:

  1. 内容溢出:如果after伪元素的内容过长或宽度设置不当,可能会导致其延伸超过<a>元素。请检查你的CSS代码,确保为after伪元素设置了合适的宽度和溢出处理方式,如使用overflow属性进行控制。
  2. 定位错误:如果after伪元素的定位属性设置不当,可能会导致其位置偏移或超出<a>元素的范围。请检查你的CSS代码,确保为after伪元素设置了正确的定位属性,如position、top、left等。

总结起来,要解决无法看到before伪元素和after伪元素以及after元素延伸超过<a>元素的问题,你需要仔细检查你的CSS代码,确保选择器、内容、定位等属性设置正确。如果问题仍然存在,可能需要进一步调试和排查其他可能的原因。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云官网:https://cloud.tencent.com/
  • 云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 云数据库 MySQL 版:https://cloud.tencent.com/product/cdb_mysql
  • 云原生应用引擎(TKE):https://cloud.tencent.com/product/tke
  • 人工智能平台(AI Lab):https://cloud.tencent.com/product/ai
  • 物联网开发平台(IoT Explorer):https://cloud.tencent.com/product/iotexplorer
  • 移动应用开发平台(MPS):https://cloud.tencent.com/product/mps
  • 云存储(COS):https://cloud.tencent.com/product/cos
  • 区块链服务(BCS):https://cloud.tencent.com/product/bcs
  • 腾讯云元宇宙:https://cloud.tencent.com/solution/virtual-universe
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

你会用::before、::after吗 ::before::after元素用法

::before::after元素用法 一、介绍 css3为了区分元素元素采用双冒号写法。...常见元素——::first-letter,::first-line,::before,::after,::selection。...::before::after下特有的content,用于在css渲染中向元素逻辑上头部或尾部添加内容。 这些添加不会出现在DOM中,不会改变文档内容,不可复制,仅仅是在css渲染层加入。...所以不要用:before或:after展示有实际意义内容,尽量使用它们显示修饰性内容,例如图标。 举例:网站有些联系电话,希望在它们前加一个icon☎,就可以使用:before元素,如下: <!...4、不使用图片创建小图标 举例:比如一个电话 很巧妙应用一个div左border加圆角当机身,::before::after配合圆角当听筒。

3.5K10

::before :after中双冒号单冒号 有什么区别?解释一下这2个元素作用

然而,由于历史原因,单冒号也可以用于表示某些元素,如:before、:after。这种用法在CSS2中被允许,但在CSS3中不再推荐。...关于 ::before ::after 元素作用: ::before 元素:用于在选定元素内容前插入一个生成内容。...::before ::after 元素可以用于在元素内容前后插入生成内容,用于装饰、布局等目的。 除了::before::after之外,还有哪些常用CSS3元素?...除了 ::before ::after,CSS3 还引入了一些其他常用元素。...::before ::after 之外元素还可以通过 content 属性生成内容,例如 ::marker 可用于自定义列表项标记样式。

41320

CSS 元素一些罕见用例

上已经收录,更多往期高赞文章分类,也整理了很多文档,教程资料。欢迎Star完善,大家面试可以参照考点复习,希望我们一起有点东西。 元素已经使用了很长时间。...添加元素 然后,为每个元素添加了:before:after元素,其宽度为50%(为了更好演示,为每个元素添加了不同背景) .elem:before, .elem:after { content...); } 还有另一种选择,即在元素:before:after之间交换skewY值。...:after VS :before 在最近Twitter讨论中,了解到最好使用:before而不是:after为什么?...因为在使用:after时,可能需要我们向其他嵌套元素添加z-index,以便元素不会与它们重叠。 我们举一个真实例子。 这是一张由缩略图标题组成简单卡片。

79640

讲一下怎么区分类、元素,同时优雅处理页面浮动问题

原因很简单,因为发现这几个概念不仅仅是编码的人搞不明白,很多前端,就是靠这个技术吃饭的人都很多搞不明白怎么回事为什么浮动一起说呢,其实这篇文章真正要说是浮动给我们布局带来问题,我们应该怎么合理处理...,还有就是元素到底是什么,我们应该怎么优雅使用,那为什么类呢?...因为发现竟然有人把元素一直看成一种东西,这个是接受不了,所以一起说一下。...那么上面:这个符号连接就是类,帮助我们做一些样式用,本质是一个css 元素介绍 首先要明白元素是html标签本身属性,css没有关系,只是我们使用css样式将这个东西展现了出来,这是一点...,那么这个办法也是可以直接解决父级元素看不问题,但是我们为什么不建议那么做呢,原因是很简单,我们一般是不改变原页面结构,我们为了实现一个功能改变了原来页面结构是非常不合理一个做法,所以才有了今天下面的写法

48810

仅用一个HTML标签,实现带动画抖音LOGO

就算你用 ::before ::after,也加上标签本体一共也就三个部分 而且!抖音 logo 是有两层: 可以看到,是一个青色音符一个红色音符叠加 所以!...需要在一个元素中一笔画出整个音符图案(容思考一下…) 如何在一个元素中一笔画出整个音符图案呢?...100%)结束位置开始一直到容器边缘,都显示为透明 现在再来看看效果: 这样一个 1/4圆环 就画好了 那么回到我正文来 .douyin::before, .douyin::after {...,MDN定义就是使当前元素与其父元素内容背景以某种方式混合,支持属性有些多,本文就不跳出去讲太多别的东西了,直接在控制台一个个试过去,发现 lighten、plus-lighter、screen...里,一定很酷,但是有些无能为力,因为要给音符设置故障风效果,是要用到元素,而现在音符本身已经是元素了,不能脱离了本文标题 “仅用一个html标签,实现带动画抖音Logo” ,如果你感兴趣

1.2K10

CSS魔法堂:一起玩透元素Content属性

初识元素  说起元素第一想到莫过于::before::after这两个了,它俩其实就是在其附属选择器命中元素上插入第一个子节点追加最后一个子节点。...那这时不禁地想问:“直接添加两个class为.before.after不是一样吗?”  ...其实使用元素::before::after以下两个好处: HTML代码量减少,对SEO有帮助; 提高JavaScript查询元素效率。  那为什么会这两好处呢?...但这也引入一个问题——我们没办法通过JavaScript完全操控元素将在下面一节为大家讲述) 一大波元素来了 除了::before::after外,别漏了以下哦!...内容无法被用户选中元素类结合使用形如:.target:hover::after

66731

前端-如何只用 CSS 完成漂亮加载

为什么要做加载 只想说, 本文最重要是对 CSS, 元素, keyframe分享, 以及读者对这些东西真正掌握, 并不是怂恿大家在每一个页面的前面都去加一个酷炫加载 是如何做 不同页面...并且, 本文假设读者已经非常熟悉元素, CSS 动画属性keyframe, 如果读者想重温, 下面两篇文章可做参考 1、学会使用 CSS 中 :after :before 2、keyframe..., 然后让它们有序地出现, 所以, 我们可以使用覆盖整个 div 两个透明元素 废话少说, 就让我们开始吧, 我们先做出它最初始样子....我们让 div.logo :: before 绝对位于 div.logo 左上角,代表方块上边框右边框 , 让 div.logo::after 绝对定位 div.logo 右下角, 代表方块下边框左边框...该代码展示了元素初始动画 div.logo {   &::before,   &::after {     /* ... */     animation-timing-function

89120

有趣CSS小示例:好看皮囊千篇一律,有趣灵魂万里挑一

如果你看上图代码没有看懂,请看下图,注释掉一行代码,你就明白了。原来是dot元素,沿着Y轴在循环位移,隐藏掉就让你看到了加载动画效果。 ? border 实现边框 ?.../after类做 + 号样式*/ .upload:before, .upload:after{ content: ''; position: absolute; top: 50%; left...但是,当元素添加了一些元素或半透明装饰之后,box-shadow就有些 力不从心了,因为 border-radius 会无耻地忽视透明部分。...不是 border-box 时); 3、对话气泡,它小尾巴通常是用元素生成; 4、几乎所有的折角效果 5、通过 clip-path 生成形状。...从上图可以看出box-shadow搞不定,drop-shadow给搞定了。这是为什么了? ? 可以很明显看出区别,为什么会这样呢?

98440

不知道你知不知道但前端NEXT知道元素小技巧

元素 元素能做什么?我们要他有何用?它能为我们解决什么问题?其他方法相比她有什么有点?我们为什么要使用它?...在开发中如果我们遇到类似这样需求我们?我们应该如何只用一个简单css元素去实现他? 方案:一个p标签,左右两条线用beforeafter画出来: ?...没有用到一行js代码,你可以试一试;这个主要是结合:checkedcounter,用before/after纯CSS实现,这种纯粹是炫技; 4.平行四边形 有没有办法只让容器形状倾斜而保持其内容不变呢...那么为什么使用了 :after 元素之后就可以实现对齐了呢?...需要注意是img/input等单标签是没有before/after元素,因为它们本身是不可以有子元素,如果你给img添加一个before,那么会被浏览器忽略。

97370

重新认识元素

熟悉前端的人都会听过css类与元素,然而大多数的人都会将这两者混淆(包括)。那今天就让我们来看看元素区别吧!...类与元素 先说一说为什么css要引入元素类,以下是css2.1 Selectors章节中对类与元素描述: CSS introduces the concepts of pseudo-elements...::before/:before 在被选元素前插入内容 ::after/:after 在被元素后插入内容,其用法特性与:before相似。...对于元素 :before :after 而言,属性 content 是必须设置,我们知道属性值可以为字符串,也可以有其它形式,比如指向一张图片 URL: content: url('img/...效果可以通过添加一个实际类来达到,而元素效果则需要通过添加一个实际元素才能达到,这也是为什么他们一个称为类,一个称为元素原因。

95220

不知道你知不知道知道元素小技巧

元素 元素能做什么?我们要他有何用?它能为我们解决什么问题?其他方法相比她有什么有点?我们为什么要使用它?...在开发中如果我们遇到类似这样需求我们?我们应该如何只用一个简单css元素去实现他? 方案:一个p标签,左右两条线用beforeafter画出来: ?...没有用到一行js代码,你可以试一试;这个主要是结合:checkedcounter,用before/after纯CSS实现,这种纯粹是炫技; 4.平行四边形 有没有办法只让容器形状倾斜而保持其内容不变呢...那么为什么使用了 :after 元素之后就可以实现对齐了呢?...需要注意是img/input等单标签是没有before/after元素,因为它们本身是不可以有子元素,如果你给img添加一个before,那么会被浏览器忽略。 元素能实现功能很多!

95120

每天10个前端小知识 【Day 15】

前端面试基础知识题 1.两个同级相邻元素之间,有看不空白间隔,是什么原因引起?有什么解决办法?...::before :after中双冒号单冒号有什么区别?解释一下这2个元素作用 单冒号(:)用于CSS3类,双冒号(::)用于CSS3元素。...::before就是以一个子元素存在,定义在元素主体内容之前一个元素。并不存在于dom之中,只存在在页面之中。 :before :after 这两个元素,是在CSS2.1里新出现。...起初,元素前缀使用是单冒号语法,但随着Web进化,在CSS3规范里,元素语法被修改成使用双冒号,成为::before ::after 4.marginpadding分别适合什么场景使用?...换句话说,其允许我们在不改变内容情况下,改变页面的布局以精确适应不同设备。 6.为什么会出现浮动?什么时候需要清除浮动?清除浮动方式有哪些? 浮动元素碰到包含它边框或者浮动元素边框停留。

8510

「后端小伙伴来学前端了」CSS3元素选择器 ::before ::after | 记录自己前端学习日子

二、我们为什么要使用元素? H5之后,增加了很多语义化元素进来,如nav、hader、footer这种语义化标签,让文档树更为清晰,也能让样式内容更好分离。...三、::before ::after 3.1、::before 旧写法(:before). ::before,在元素内部前面插入内容。...; } 3.2、::after ::after元素内部后面插入内容。 CSS元素::after用来创建一个元素,作为已选中元素最后一个子元素。...如下示例: 加了之后就ok拉 before 盒子 after 之间关系大致如下图 3.4、注意点 beforeafter会创建一个元素,但是创建出来元素是属于行内元素。...另外新创建元素在文档树中是找不到 before after 必须有content 属性 before 在父元素内容前面创建元素after元素内容后面插入元素 元素选择器标签选择器一样

69710

移动端重构实战系列2——line list

把1px挂在除第一个元素之外元素before上,而第一个最上面最后一个最下面的1px将会在父元素上实现,那样中间line-item之间1px就很容易扩展实现缩进。...每个line item高度为44px(ios 标准高度为44px),实现方法为line-height + padding,为什么不是直接line-height:44px,这就涉及到我们下面更多扩展形态了...; // 添加最上最下1px,形成封闭 .line-item::before { left: 10px; // 缩进10px } } .line-list--after-v...} } PS:这里缩进用元素before1px left定位来实现,看到过有些方法是设置itemborder-bottom,然后设置itemmargin-left: 10px,这种实现方法是错误...,单选同样可以保持结构不变,通过after元素生成选中对钩;而多选则可以添加i.icon-checbox元素

37320

关于元素:before:after

:before:after作用就是在指定元素内容(而不是元素本身)之前或者之后插入一个包含content属性指定内容行内元素,最基本用法如下: #example:before { content...但是可以指定content为空,同时正如前面所说,插入内容默认是一个行内元素,并且在HTML源代码中无法看到,这就是为什么称之为元素理由,所以也就无法通过DOM对其进行操作。...但是可以指定content为空,同时正如前面所说,插入内容默认是一个行内元素,并且在HTML源代码中无法看到,这就是为什么称之为元素理由,所以也就无法通过DOM对其进行操作。...()函数会返回指定元素对应属性值 :before:after一些惊人用法 >. clearfix hack 如果父元素容器里面的子元素是浮动元素的话,我们一般需要在父元素闭合前添加一个clear:...下面是利用:before:after一个实现:(via Nicolas Gallagher) /* For modern browsers */ .clearfix:before, .clearfix

1K10

「HTML+CSS」--自定义按钮样式【001】

中间文字使用span标签,需要使用span标签类 左下角两条线利用span类::before/::after实现,原理类似右上角 Demo代码 HTML <!...首先,使用::before::after类,在button前后添加两个元素 一个width=0,height=2px;另一个height=0,width=2px ? ? ?...这里便于理解观察,我们将这两个元素显示出来 修改css代码:将before改为红色,便于观察,同时width、height都改为20px .btn::before,.btn::after{ position...实现宽度延伸,另一个after就实现高度延伸,所以一个元素两个元素就可以实现两条线延展效果 同样,左下角延展就是利用span::before::after元素了 踩坑 1.父元素button...原因:因为buttonbeforeafter元素 position:absolute; 所以必须设置button position: relative, position中absolute是指

1.9K20

移动端重构实战系列2——line list

把1px挂在除第一个元素之外元素before上,而第一个最上面最后一个最下面的1px将会在父元素上实现,那样中间line-item之间1px就很容易扩展实现缩进。...每个line item高度为44px(ios 标准高度为44px),实现方法为line-height + padding,为什么不是直接line-height:44px,这就涉及到我们下面更多扩展形态了...; // 添加最上最下1px,形成封闭 .line-item::before { left: 10px; // 缩进10px } } .line-list--after-v...} } PS:这里缩进用元素before1px left定位来实现,看到过有些方法是设置itemborder-bottom,然后设置itemmargin-left: 10px,这种实现方法是错误...,单选同样可以保持结构不变,通过after元素生成选中对钩;而多选则可以添加i.icon-checbox元素

28910

移动端重构实战系列2——line list

把1px挂在除第一个元素之外元素before上,而第一个最上面最后一个最下面的1px将会在父元素上实现,那样中间line-item之间1px就很容易扩展实现缩进。...每个line item高度为44px(ios 标准高度为44px),实现方法为line-height + padding,为什么不是直接line-height:44px,这就涉及到我们下面更多扩展形态了...; // 添加最上最下1px,形成封闭 .line-item::before { left: 10px; // 缩进10px } } .line-list--after-v...} } PS:这里缩进用元素before1px left定位来实现,看到过有些方法是设置itemborder-bottom,然后设置itemmargin-left: 10px,这种实现方法是错误...,单选同样可以保持结构不变,通过after元素生成选中对钩;而多选则可以添加i.icon-checbox元素

59080

带有CSS3动画3D条形图

在实际编写代码之前,通常会写下所有可能遇到挑战,并在一个特定项目中考虑所能想到解决方案,并重复这个过程直到我看到一个看起来像是可以执行策略。...我们使用:before类生成这个元素; 我们将在本教程中使用:之前之后:类很多。...我们将100%宽度设置到我标记支架上,以便能够在整个图形中绘制,使用虚线边框来设置我们Y轴线并定位跨度元素,使得Y轴标签为在图表之外。...所以,我们已经使用了 transform:skew()transform:rotate()为了转换我们元素,使它们一起产生一个3D对象错觉 :之前之后:类生成与CSS元素,并保持我们HTML...标记相对干净 :nth-last-child():不是用于定位特定列表项类,并避免向标记中添加额外类/ ID 线性渐变连同background-position一起部分填充背景元素 rgba()

81180
领券