【问题标题】:Material design expandable textfield width 100%材料设计可扩展文本字段宽度 100%
【发布时间】:2016-07-05 15:44:03
【问题描述】:

我正在尝试在 outer-table 元素的全宽上扩展 md-textfield。但是,当我设置width: 100% 时它没有正确扩展,它的部分属于屏幕的右侧,并且它的大小有一些问题。我没有给出outer-table 的确切宽度,因为它应该根据设备而变化。有人可以告诉我我做错了什么,这就是我目前所做的。

.outer-table {
  width: 100%
}

.table-header {
  position: relative;
  left: 9px;
  bottom: 3px;
  width: 100%;
}

.table-header  div.mdl-textfield {
  position: absolute;
  right: 10px;
  z-index: 9999;
  width: auto;
}

.full-width {
  width: 100%;  
}
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>mdl textarea</title>
  <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
  <link rel="stylesheet" href="https://code.getmdl.io/1.1.3/material.indigo-pink.min.css">
  <script defer src="https://code.getmdl.io/1.1.3/material.min.js"></script>
</head>
<body>
  <div class="outer-table">
    <div class="table-header">
      <div class="mdl-textfield mdl-js-textfield full-width">
        <label class="mdl-button mdl-js-button mdl-button--icon" for="expando1">
          <i class="material-icons">search</i>
        </label>
        <div class="mdl-textfield__expandable-holder full-width">
          <input class="mdl-textfield__input full-width" type="text" id="expando1">
          <label class="mdl-textfield__label" for="expando1">Expandable text field</label>
        </div>
      </div>
    </div>
  </div>
</body>
</html>

在布赖恩回答后更新

我希望标签元素贴在右侧,然后单击向左展开。

【问题讨论】:

  • 我不确定你在问什么。看起来在您的演示中一切都按您的意愿进行,不是吗?你还缺少什么?

标签: css material-design


【解决方案1】:

改变这个css:

.table-header  div.mdl-textfield {
  position: absolute;
  right: 10px;
  z-index: 9999;
  width: auto;
}

到这个css:

.table-header  div.mdl-textfield {
      position: absolute;
      right: 10px;
      z-index: 9999;
      width: 100%;
    }

【讨论】:

  • 在这种情况下标签贴在左侧,但我希望它在右侧。
【解决方案2】:

您只需交换&lt;label&gt;&lt;div&gt;&lt;/div&gt; 的位置

<div class="table-header">
      <div class="mdl-textfield mdl-js-textfield full-width">

        <div class="mdl-textfield__expandable-holder full-width">
          <input class="mdl-textfield__input full-width" type="text" id="expando1">
          <label class="mdl-textfield__label" for="expando1">Expandable text field</label>
        </div>
        <label class="mdl-button mdl-js-button mdl-button--icon" for="expando1">
          <i class="material-icons">search</i>
        </label>
      </div>
    </div>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-07-10
    • 1970-01-01
    • 2014-12-21
    • 2019-03-24
    • 1970-01-01
    • 2020-01-23
    • 2015-12-25
    相关资源
    最近更新 更多