input前后加伪元素不展示

input前后加伪元素不展示

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<title></title>

<style type="text/css">

.item>span:nth-of-type(2) {

width: 80px;

line-height: 40px;

display: inline-block;

text-align-last: justify;

}

.item>input:before{

content: ":";

height: 40px;

}

</style>

</head>

<body>

<div class="item">

<span>*</span>

<span>邮箱</span>

<!-- <span>:</span> -->

<input type="text" />

<span></span>

</div>

<div class="item">

<span>*</span>

<span>身份证号</span>

<!-- <span>:</span> -->

<input type="text" />

<span></span>

</div>

<div class="item">

<span>*</span>

<span>身份</span>

<!-- <span>:</span> -->

<input type="text" />

<span></span>

</div>

</body>

</html>

这样加了之后不展示,是input标签无法添加伪元素吗,关于伪元素添加默认是在其父级元素的子元素最后一个after,和第一个before添加,有办法可以添加到第二个元素后吗,比如说

<div class="item">

<span>*</span>

<span>邮箱</span>

<input type="text" />

<span></span>

</div>

想把伪元素添加在

<span>邮箱</span>

<input type="text" />

之间,该怎么操作呢

正在回答 回答被采纳积分+1

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

3回答
好帮手慕星星 2020-04-23 19:18:58

同学你好,可以理解为单标签之内不要用伪元素,但是不是绝对的。像同学测试type属性为radio也是可以添加伪元素的,所以使用的时候自己可以先测试下。

祝学习愉快!

好帮手慕星星 2020-04-22 14:29:52

同学你好,input标签是一个单标签,无法添加伪元素,因为伪元素添加之后就是子元素了

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

所以没有效果。可以不使用伪元素,直接在文字后面加冒号就好了,参考

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

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

祝学习愉快!

  • 提问者 王文辉 #1
    我试了下,发现一个很有意思的事情,input在type=text和password的时候添加伪元素没啥用,不显示,但如果是radio的时候可以显示,显示效果有点奇怪,这个地方可以简单理解成,单标签之内不要用伪元素吗
    2020-04-23 18:58:51
ForeverLovel 2020-04-22 14:23:17

伪元素加个display:block试试

  • 提问者 王文辉 #1
    试过了,没啥用,input是单标签,没办法添加伪元素
    2020-04-22 14:33:30
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
2.组件化网页开发
  • 参与学习           人
  • 提交作业       1121    份
  • 解答问题       14456    个

本阶段在运用JS实现动态网页开发的基础上,带你深入理解企业开发核心思想,完成一个企业级网页的开发,体验前端工程师的成就感。

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

在线咨询

领取优惠

免费试听

领取大纲

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