html - 显示 : inline on checkbox and label not behaving as expected

标签 html css

我想在我的简单网页中放置一个带有标签的复选框,但是当我选择 labelcheckbox 以更改它们的 display,它们的行为不同。

当复选框设置为内联时,它会向上移动到显示设置为 block 的文本区域的右侧。所以我想我可以将复选框显示设置为 block 并将标签显示设置为内联,标签将移动到 block 的右侧。相反,标签保留在复选框下方,并消除了它与发送按钮之间的任何空白。

我该如何解决这个问题?

密码在JS Bin

表单是 .main-body 的 child

HTML

<form>
  <label for="name-input">Name</label>
  <input type="text" id="name-input">
  <label for="message-input">Message</label>
  <textarea id="message-input"></textarea>
  <input type="checkbox" id="current-user">
  <label for="current-user">I currently use SuiteLyfe</label>
  <input type="submit" value="Send">
</form>

CSS

.main-body {
  display: box;
  width: 600px;
  margin: 0 auto 0 auto;
}
textarea[id=message-input] {
  display: box;
  box-sizing: border-box;
  width: 400px;
  height: 200px;
  margin-bottom: 15px;
  font-size: 14px;
}
input[type=checkbox] {
  display: block;
}
label[for=current-user] {
  display: inline;
}

P.S. 我知道 bootstrap 和其他技术,但现在我正在学习准系统 html 和 css 并希望理解它们,尽管我意识到这对我的职业生涯可能无关紧要。

最佳答案

将文本区域显示类型更改为block,将复选框显示类型更改为inline

textarea[id=message-input] {
  display: block;
  box-sizing: border-box;
  width: 400px;
  height: 200px;
  margin-bottom: 15px;
  font-size: 14px;
}
input[type=checkbox] {
  display: inline;
}

关于html - 显示 : inline on checkbox and label not behaving as expected,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47446322/

相关文章:

javascript - 如何在多次克隆表单时使用 javascript 或 jquery 自动滚动到焦点输入字段分区

iphone - iPhone 中的 Web SQL 存储

html - 信封联系表响应问题

css - 使用 sScrollX/sScrollY 的列标题未对齐

javascript - 如何确定哪个元素具有特定类名?

javascript - 防止窗口向下滚动

html - 如何创建没有 float 的下拉导航栏?

css - 是否有可能仅使用 CSS/JavaScript 使一堆文本段落按特定顺序显示消失?

javascript - 在 Bootstrap 4 中启用模式打开的后台使用

Jquery 数据表 - 表头和列宽不匹配