各个li右侧的>符号的位置

各个li右侧的>符号的位置

给这些符号设置的都是top:0;所以查看这些元素显示在下图的位置我能接受http://img1.sycdn.imooc.com//climg/5ea988ba09da151202090105.jpg

可是为什么明明显示这些元素在那里,页面中显示的效果却是和li的内容好像是平行的呢?它们的高度和li的高度不一样的呀

正在回答

登陆购买课程后可参与讨论,去登陆

5回答

同学你好,只要文字和伪元素在一行显示,给li设置了行高,就会出现同学提到的这种情况。设置定位或者调整为内联块元素,只是让li和伪元素在一行显示而已。

祝学习愉快~

好帮手慕言 2020-05-01 15:30:00

同学你好,伪元素也不一定要设置定位,设置成内联块元素也是可以的,只要和文字在一行显示就会出现这种情况。同学可以测试下。

祝学习愉快~

  • 提问者 Aurora_Meteor #1
    我的意思是 因为“ 给li设置了行高,再给它的伪元素设置了绝对定位和top:0”,所以“不管伪元素的高度是多少,实际显示出来都会和li的内容在同一高度“吗?并不是怎么做才能实现平行,只是想明白出现这样情况的原因...
    2020-05-01 15:46:44
好帮手慕言 2020-05-01 11:17:20

同学你好,伪元素会受到行高的影响,可以参考下方的例子:

http://img1.sycdn.imooc.com//climg/5eab93d9091191e403130179.jpg

http://img1.sycdn.imooc.com//climg/5eab93e709f14d0d04250677.jpg

效果(不管给伪元素设置的高度为多少,效果都是会为如下 )
http://img1.sycdn.imooc.com//climg/5eab93fb0969566708340090.jpg


同学可以再理解下,祝学习愉快~

  • 提问者 Aurora_Meteor #1
    这意思是给li设置了行高,再给它的伪元素设置了绝对定位和top:0以后,不管伪元素的高度是多少,实际显示出来都会和li的内容在同一高度么?
    2020-05-01 11:47:00
好帮手慕粉 2020-04-30 19:02:04

同学你好,不一样是因为伪元素设置了定位。建议同学按照老师回复的操作试一下呢,先把li标签的行高去掉,再把after伪元素的定位值去掉,比较下原始位置在哪,添加行高和定位以后又在哪。

祝学习愉快~

  • 提问者 Aurora_Meteor #1
    试了一下发现,不管after伪元素有没有绝对定位,实际显示的位置都是在控制台显示的位置的下方,这是after伪元素的特性?所以虽然绝对定位加上top:0让它和li顶部对齐了,但是因为这个特性就导致它实际显示的位置看起来和li内的文字平行?实际元素的高度位置并不平行,只是视觉显示是平行的?
    2020-04-30 19:37:49
好帮手慕粉 2020-04-30 13:53:58

同学你好,是受到了li元素行高的影响,我们可以把行高去掉看下:

http://img1.sycdn.imooc.com//climg/5eaa67e509c105ab10050511.jpg

http://img1.sycdn.imooc.com//climg/5eaa67f3095c111707840367.jpg

祝学习愉快~

  • 提问者 Aurora_Meteor #1
    不是很明白呢,元素在页面中显示的位置不是应该都和控制台查看到的是一样的么? 而且li的行高和after元素的高度也不一样的呀。查看li的文字时控制台显示的位置就和实际的一样,after却不一样,但是after实际的位置高度却和文字一样?after是li的伪元素不是文字的伪元素呀,为什么会这样呢
    2020-04-30 15:11:29
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
3.WebAPP开发与小程序
  • 参与学习           人
  • 提交作业       622    份
  • 解答问题       6815    个

微信带火了小程序,也让前端工程师有了更多的展现机会,本阶段带你从移动基础知识的学习到webAPP开发,及小程序开发,让你PC端与移动端两端通吃。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师