我如何使用CSS:之后将Glyphicon元素添加到输入

时间:2015-10-19 05:35:10

标签: css glyphicons

我有一个<input>元素,我无法修改它周围的HTML,但我想在其中添加一个glyphicon(<i class="glyphicons glyphicons-some-icon"/>)。我希望用CSS做到这一点,但我似乎无法让:after工作。我认为以下内容会生成该元素:

#my-input {
    content: attr(class, 'glyphicons glyphicon-some-icon'); 
    content: '<i/>'; 
}

但事实并非如此。理解:after的任何人都可以更好地解释如何使用<i class="glyphicons glyphicons-some-icon"/>生成所需的:after吗?

2 个答案:

答案 0 :(得分:8)

  

:在之前之后应用于容器内,这意味着您可以   将它用于带有结束标记的元素。see explanation

见下面的例子。实现你想要的。

注意:父位置是相对的,因此冷藏绝对位置将取决于父级的上下。

&#13;
&#13;
.myInput:after {
  font-family: FontAwesome;
  content: "\f0a9";
  position: absolute;
  top: 3px;
  left: 7px;
}
.my{
position:relative
}
&#13;
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.4.0/css/font-awesome.css" rel="stylesheet" />

<div class="my">

  <div class="myInput">
    <input type="text" />
  </div>

</div>
&#13;
&#13;
&#13;

OR

&#13;
&#13;
.mystyle:before {
  font-family: FontAwesome;
  content: "\f0a9";
}
.myInput {
  position: relative;
}
.myInput div {
  position: absolute;
  top: 3px;
  left: 5px;
}
&#13;
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.4.0/css/font-awesome.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="myInput">
  <input class="mystyle" type="text" value="" />
  <div class="mystyle"></div>
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

这可以实现您的目标。

[data-icon]:before {
  font-family: icons;
  content: attr(data-icon);
  speak: none; /* Not to be trusted, but hey. */
  position: absolute;
}
<h2 id="stats" aria-hidden="true" data-icon="&#x21dd;">
<input type="text"/>
</h2>

OR

.glyphicon-search:before {
    position: absolute;
}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">

<div class="glyphicon glyphicon-search">
<input type="text"/>
</div>