WEB 教程
实践 示例
HTML 参考手册
CSS 参考手册
PHP 参考手册

如何在 Bootstrap 中添加图标以输入提交按钮

主题:Bootstrap / Sass上一页|下一页

答案:使用 CSS position 属性

因为 <input> 是一个空元素,所以我们不能像使用 <button> 元素创建的按钮那样将图标 HTML 直接放在输入按钮中。

但是,我们可以将 Glyphicon 放置在输入按钮的外部,并在视觉上将其推入内部,以使用 CSS 定位技术创建看起来图标放置在按钮本身内部的效果。

让我们试试下面的例子来了解它的基本工作原理:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Creating the Bootstrap Input Buttons with Icons</title>
<link rel="stylesheet" href="css/bootstrap.min.css">
<link rel="stylesheet" href="css/font-awesome.min.css">
<script src="js/jquery-3.5.1.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<style>
    .icon-input-btn{
        display: inline-block;
        position: relative;
    }
    .icon-input-btn input[type="submit"]{
        padding-left: 2em;
    }
    .icon-input-btn .fa{
        display: inline-block;
        position: absolute;
        left: 0.65em;
        top: 30%;
    }
</style>
<script>
$(document).ready(function(){
	$(".icon-input-btn").each(function(){
        var btnFont = $(this).find(".btn").css("font-size");
        var btnColor = $(this).find(".btn").css("color");
      	$(this).find(".fa").css({'font-size': btnFont, 'color': btnColor});
	}); 
});
</script>
</head>
<body>
<div class="m-3">
	<span class="icon-input-btn">
		<i class="fa fa-search"></i> 
		<input type="submit" class="btn btn-primary btn-lg" value="Search">
	</span>
    <span class="icon-input-btn">
		<i class="fa fa-search"></i> 
		<input type="submit" class="btn btn-secondary btn-lg" value="Search">
	</span>
    <hr>
	<span class="icon-input-btn">
		<i class="fa fa-search"></i> 
		<input type="submit" class="btn btn-primary" value="Search">
	</span>
    <span class="icon-input-btn">
		<i class="fa fa-search"></i> 
		<input type="submit" class="btn btn-secondary" value="Search">
	</span>
    <hr> 
	<span class="icon-input-btn">
		<i class="fa fa-search"></i> 
		<input type="submit" class="btn btn-primary btn-sm" value="Search">
	</span>
    <span class="icon-input-btn">
		<i class="fa fa-search"></i> 
		<input type="submit" class="btn btn-secondary btn-sm" value="Search">
	</span>
</div>
</body>
</html>

如您所见,我们用 <span> 元素包装了 Glyphicon 和输入按钮,并在其上应用了类 .icon-input-btn。 这样做会自动在封闭的图标和输入按钮上应用一些样式,并强制它们进行必要的调整。

上面示例中的 jQuery 代码只是简单地从输入按钮中获取 font-sizecolor CSS 属性值并将其应用于相应的 Glyphicons。 它还调整了 Glyphicon 的 top 位置,使其在中间垂直对齐,以获得额外的小按钮。


FAQ 相关问题解答

以下是与此主题相关的更多常见问题解答:

Advertisements