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

CSS:如何将搜索图标与文本“合并”,使其在输入时消失

在CSS中,可以使用伪元素和定位技术来实现将搜索图标与文本合并的效果,使其在输入时消失。

首先,需要为搜索框的父元素设置相对定位,以便后续绝对定位的子元素可以相对于父元素进行定位。

然后,可以使用伪元素(::before或::after)来创建一个与搜索图标相同大小的空白元素,并将其设置为绝对定位。通过设置其content属性为空字符串,可以使其在页面上不显示任何内容。

接下来,使用绝对定位将搜索图标和文本分别定位到合适的位置。可以通过设置top、left、right、bottom等属性来调整它们的位置。

最后,通过设置z-index属性来确保搜索图标位于文本之上,以便在输入时搜索图标可以被覆盖隐藏。

以下是一个示例代码:

HTML:

代码语言:txt
复制
<div class="search-box">
  <input type="text" placeholder="搜索">
</div>

CSS:

代码语言:txt
复制
.search-box {
  position: relative;
  width: 200px;
}

.search-box input[type="text"] {
  padding-left: 20px; /* 为搜索图标留出空间 */
}

.search-box::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 5px;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  background-image: url(搜索图标的URL);
  background-size: cover;
  z-index: 1;
}

.search-box input[type="text"]:focus + ::before {
  display: none; /* 在输入时隐藏搜索图标 */
}

在上述代码中,需要将"搜索图标的URL"替换为实际的搜索图标的URL。

这样,当用户在输入框中进行输入时,搜索图标将会消失,文本会填充整个输入框。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券