将.form-text宽度限制为输入的宽度

问题描述 投票:0回答:1

如何根据上述输入的宽度来限制

.form-text
的宽度?

我想在 Bootstrap 应用程序中布局

<input>
,并使用
.form-text
来获取一些附加信息。
<input>
.form-text
是网格布局的一部分(跨越多列)。
.form-text
样式的
<div>
内显示的文本是动态变化的,可以根据其大小扩展网格的列。

按照此示例(https://getbootstrap.com/docs/5.3/forms/overview/#overview

<form class='ref-table'>
  <div class="mb-3">
    <label for="exampleInputEmail1" class="form-label">Email address</label>
    <input type="email" class="form-control" id="exampleInputEmail1" aria-describedby="emailHelp">
    <div id="emailHelp" class="form-text">We'll never share your email with anyone else. We'll never share your email with anyone else. We'll never share your email with anyone else.</div>
  </div>
</form>

我注意到

.form-text
<input>
都保持相同的宽度。当我将
style='width: auto'
添加到
<input>
时,表单文本会超出输入范围,但理想情况下,文本应在输入下方换行(使用输入的宽度作为其宽度)。

html css twitter-bootstrap grid-layout
1个回答
0
投票

我就是这样做的

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Form Layout</title>
  <!-- Bootstrap CSS -->
  <link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
  <style>
    /* Custom CSS */
    .custom-form-text {
      width: calc(100% - 210px); /* Adjust as needed */
      float: left;
      margin-top: 8px; /* Adjust as needed */
    }
  </style>
</head>
<body>
  <form class="ref-table">
    <div class="row mb-3">
      <div class="col-auto">
        <label for="exampleInputEmail1" class="form-label">Email address</label>
        <input type="email" class="form-control" id="exampleInputEmail1" aria-describedby="emailHelp">
      </div>
      <div class="col">
        <div class="form-text custom-form-text">We'll never share your email with anyone else. We'll never share your email with anyone else. We'll never share your email with anyone else.</div>
      </div>
    </div>
  </form>
</body>
</html>
© www.soinside.com 2019 - 2024. All rights reserved.