#html #twitter-bootstrap
#HTML #twitter-bootstrap
Вопрос:
Я пытаюсь реализовать простую группу ввода submit. В настоящее время у меня есть следующее:
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.6/js/bootstrap.min.js"></script>
<div class="input-group">
<textarea class="form-control custom-control" rows="3" style="resize:none"></textarea> <span class="input-group-btn">
<button class="btn btn-primary">
<span>Send</span>
</button>
</span>
</div>
Я хочу, чтобы кнопка «Отправить» занимала всю высоту текстовой области. Выполнимо ли это?
Комментарии:
1. Не пропустите заключительное заявление «>»: style=»resize:none»></textarea>
Ответ №1:
Что вам нужно сделать, так это использовать input-group-addon
утилиту. Это позволит кнопке занимать всю высоту. Вам нужно будет настроить заливку, потому что она работает только при наведении курсора мыши (изменение цвета). Я бы рекомендовал скопировать все соответствующие стили класса и создать свой собственный (для цвета и фона, чтобы это не был стиль начальной загрузки по умолчанию).
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.6/js/bootstrap.min.js"></script>
<div class="input-group">
<textarea class="form-control custom-control" rows="3" style="resize:none"></textarea>
<span class="input-group-addon btn btn-primary">Send</span>
</div>
Я знаю, что это не соответствует документации Bootstrap, но их документация предполагает, что вы не используете текстовое поле.
Комментарии:
1. Я не могу изменить размер кнопки?
2. @Aibrean Вам следует изменить ссылку начальной загрузки на http s . Последние версии Chrome блокируют http-контент на сайтах https.
3. Также добавьте tabindex=»0″ к тегу span, чтобы иметь возможность перемещаться с клавиатуры. Например: <span class=»input-group-addon btn btn-primary» tabindex=»0″> Отправить</span>
Ответ №2:
Просто чтобы уточнить ответ Айбреана и дополнительно уточнить, как сделать его / ее span
тег работоспособным.
Нам нужно будет привязать span к прослушивателю событий, в примере ниже я использую jQuery.
; (function ($) {
$('#submitMyForm').on('click', function () {
//$('#myForm').submit(); // js fiddle won't allow this
alert("form submitted");
});
})(jQuery)
#exampleWrapper {
padding: 100px;
}
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.6/js/bootstrap.min.js"></script>
<div id="exampleWrapper">
<form id="myForm" method="POST" action="?process-form">
<div class="input-group">
<textarea class="form-control custom-control" rows="3" style="resize:none"></textarea>
<span class="input-group-addon btn btn-primary" id="submitMyForm">Send</span>
</div>
</form>
</div>
Ответ №3:
Давайте предположим, что мы хотим создать текстовое поле с кнопкой перехода слева (в начале) и знаком поиска справа (в конце). вот код, позволяющий сделать это с помощью bootstrap
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>
Creating a button in text area using bootstrap
</title>
<link href="css/bootstrap.min.css" rel="stylesheet">
<style>
</style>
</head>
<body>
<div class="container-fluid">
<label for="search" class="sr-only">Search</label>
<input type="text" id="search" class="form-control" placeholder="Search">
<span class="glyphicon glyphicon-search form-control-feedback"></span>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js">
</script>
<script src="js/bootstrap.min.js">
</script>
</body>
</html>