输入字段的宽度仅适用于px

时间:2019-03-13 20:40:28

标签: html css

我正在尝试将输入字段的宽度设置为80%,但是每当我将其更改为%时,它都无效。

我的html:

<div class="todo">
  <div class="content">
    <div class="b2">
        Ends:<input class="finishDate" [(ngModel)]="toDo$.finishDate">
        <mat-divider></mat-divider>
    </div>
  </div>
</div>

我的待办事项组件的完整CSS。

   @media  screen and (min-width: 500px) {
  .todo {
    display:flex;
  }
}


.b1 input[type=text]{
  text-decoration: underline#334A5A ;
  text-transform: uppercase;
  font-weight:bold;
  font-size:19px;
  font-family: 'Old Standard TT', serif;
  color:#0C1824;
}
input {
  border:none;
  outline: none;
  width:100%;
  box-sizing:border-box;
}
.delete {
  text-align:center;
}

2 个答案:

答案 0 :(得分:2)

为什么不使其具有动态性,以致您无需对width进行硬编码?

  • 使用flexbox
  • 用真实的<label>包围概念标签,并将其指向id(添加)中的input。单击标签时,它将光标聚焦到关联的input
  • 告诉输入内容占用该行中尽可能多的空间,其余部分留给label

input {
  outline: none;
  border: 1px solid red;
}

.b2 {
  display: flex;
}

.finishDate {
  flex-grow: 1;
}
<div class="todo">
  <div class="content">
    <div class="b2">
        <label for="finishDate">Ends:</label>
        <input id="finishDate" class="finishDate">
    </div>
  </div>
</div>

答案 1 :(得分:0)

尝试添加

box-sizing: border-box;

输入您的代码

DEMO