首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在不影响布局中心对齐的情况下在输入框左侧添加标签?

如何在不影响布局中心对齐的情况下在输入框左侧添加标签?
EN

Stack Overflow用户
提问于 2022-01-12 23:38:12
回答 3查看 49关注 0票数 0

布局图像

以下是我迄今所做的工作:https://jsfiddle.net/codingNewbie/x5f2cj67/

代码语言:javascript
复制
    <main id="login-page" class="container">
        <h1>Login</h1>
        <form action="#">
            <!-- <label for="email">Email</label> -->
            <input type="email">
            <br>
            <!-- <label for="password">Password</label> -->
            <input type="password">
            <br>
            <button type="submit" class="btn">Login</button>
        </form>
    </main>
    <!-- If you uncomment the labels it will move the inputbox off-center -->
代码语言:javascript
复制
.container{
    max-width: 960px;
    height: 100vh;
    margin: auto;
}

#login-page {
    text-align: center;
}

输入箱和按钮应保持在中心。我需要在左边添加标签,而不影响布局的中心对齐。我怎样才能做到这一点?

谢谢CSS大师

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2022-01-12 23:58:53

这里不是专家,但一种简单的方法是将固定宽度放到输入端,然后将其中的一半偏移到表单中。

代码语言:javascript
复制
input {
  width: 150px;
}

.fields {
  margin-left: -75px;
}

https://jsfiddle.net/9o86uaxg/5/

票数 1
EN

Stack Overflow用户

发布于 2022-01-12 23:58:24

第一件事是你的方式处理布局是错误的。但是我不知道css的其他属性,所以我试着向你的lvl解释。只知道这样不好。它更好地使用柔性箱或网格的布局。有很多种方法

代码语言:javascript
复制
  <main id="login-page" class="container">
    <h1>Login</h1>
    <form action="#">
      <label for="email">Email</label>
      <input type="email">
      <br>
      <label for="password">Password</label>
      <input type="password">
      <br>
      <button type="submit" class="btn">Login</button>
    </form>
  </main>
代码语言:javascript
复制
.container {
  max-width: 960px;
  height: 100vh;
  margin: auto;
}
h1 {
  text-align: center;
}

#login-page {
}
input,
button {
  float: right;
  margin-right: 50%;
  transform: translateX(50%);
}
label {
  float: left;
  margin-left: 250px;
}
票数 0
EN

Stack Overflow用户

发布于 2022-01-13 03:23:52

尝试使用display: inline-block来正确地排列标签。

代码语言:javascript
复制
   <form action="/form/submit" method="post">
      <div>
        <label for="email">Email:</label>
        <input type="email" autofocus />
      </div>
      <div>
        <label for="password">Password:</label>
        <input type="password" />
      </div>
      <input type="submit" value="Login" />
    </form>
代码语言:javascript
复制
      div {
        margin-bottom: 10px;
      }
      label {
        display: inline-block;
        width: 110px;
        color: #777777;
      }
      input {
        padding: 5px 10px;
      }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70689771

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档