Material Design Lite - 文本字段


MDL 提供了一系列 CSS 类来应用各种预定义的视觉和Behave增强功能并显示不同类型的文本输入。下表列出了可用的类别及其效果。

先生。 类名和描述
1

mdl-文本字段

将容器标识为 MDL 组件,并且在“外部”div 元素上是必需的。

2

mdl-js-文本字段

将基本 MDL Behave设置为输入,并且是“外部”div 元素所必需的。

3

mdl-textfield__input

将元素标识为文本字段输入,并且在输入或文本区域元素上是必需的。

4

mdl-textfield__标签

将元素标识为文本字段标签,并且在输入或文本区域元素的标签元素上是必需的。

5

mdl-textfield--浮动标签

应用浮动标签效果,可选;继续“外部”div 元素。

6

mdl-textfield__错误

将span标识为MDL错误消息并且是可选的;继续带有模式的 MDL 输入元素的 span 元素。

7

mdl-文本字段--可扩展

将 div 标识为 MDL 可扩展文本字段容器;用于可扩展的输入字段,并且在“外部”div 元素上是必需的。

8

MDL 按钮

将标签标识为 MDL 图标按钮;用于可扩展的输入字段,并且是“外部”div 的标签元素所必需的。

9

mdl-js-按钮

设置图标容器的基本Behave;用于可扩展的输入字段,并且是“外部”div 的标签元素所必需的。

10

MDL-按钮--图标

将标签标识为 MDL 图标容器;用于可扩展的输入字段,并且是“外部”div 的标签元素所必需的。

11

mdl-输入__expandable-holder

将容器标识为 MDL 组件;用于可扩展的输入字段,并且是“内部”div 元素所必需的。

12

是无效的

将文本字段标识为在初始加载时无效,并且在 mdl-textfield 元素上是可选的。

例子

以下示例将帮助您了解如何使用 mdl-textfield 类来显示不同类型的文本字段。

mdl_textfields.htm

<html>
   <head>
      <script 
         src = "https://storage.googleapis.com/code.getmdl.io/1.0.6/material.min.js">
      </script>
      <link rel = "stylesheet" 
         href = "https://storage.googleapis.com/code.getmdl.io/1.0.6/material.indigo-pink.min.css">
      <link rel = "stylesheet" 
         href = "https://fonts.googleapis.com/icon?family=Material+Icons">	  
      
      <script langauage = "javascript">
         function showMessage(value) {
            document.getElementById("message").innerHTML = value;
         }	  
      </script>
   </head>
   
   <body>
      <table>
         <tr><td>Simple Text Field</td><td>Numeric Text Field</td>
            <td>Disabled Text Field</td></tr>
         <tr>
            <td> 
               <form action = "#">
                  <div class = "mdl-textfield mdl-js-textfield">
                     <input class = "mdl-textfield__input" type = "text" id = "text1">
                     <label class = "mdl-textfield__label" for = "text1">Text...</label>
                  </div>
               </form>
            </td>
            
            <td>
               <form action = "#">
                  <div class = "mdl-textfield mdl-js-textfield">
                     <input class = "mdl-textfield__input" type = "text" 
                        pattern = "-?[0-9]*(\.[0-9]+)?" id = "text2">
                     <label class = "mdl-textfield__label" for = "text2">
                        Number...</label>
                     <span class = "mdl-textfield__error">Number required!</span>
                  </div>
               </form>
            </td>
            
            <td>
               <form action = "#">
                  <div class = "mdl-textfield mdl-js-textfield">
                     <input class = "mdl-textfield__input" type = "text" 
                        id = "text3" disabled>
                     <label class = "mdl-textfield__label" for = "text3">
                        Disabled...</label>
                  </div>
               </form>
            </td>
         </tr>
         
         <tr><td>Simple Text Field with Floating Label</td>
            <td>Numeric Text Field with Floating Label</td>
            <td> </td></tr>
         <tr>
            <td> 
               <form action = "#">
                  <div class = "mdl-textfield mdl-js-textfield mdl-textfield--floating-label">
                     <input class = "mdl-textfield__input" type = "text" id = "text4">
                     <label class = "mdl-textfield__label" for = "text4">Text...</label>
                  </div>
               </form>
            </td>
            
            <td>
               <form action = "#">
                  <div class = "mdl-textfield mdl-js-textfield mdl-textfield--floating-label">
                     <input class = "mdl-textfield__input" type = "text" 
                        pattern = "-?[0-9]*(\.[0-9]+)?" id = "text5">
                     <label class = "mdl-textfield__label" for = "text5">
                        Number...</label>
                     <span class = "mdl-textfield__error">Number required!</span>
                  </div>
               </form>
            </td>
            <td> </td>
         </tr>
         
         <tr><td>Multiline Text Field</td><td>Expandable Multiline Text Field</td>
            <td> </td></tr>
         <tr>
            <td> 
               <form action = "#">
                  <div class = "mdl-textfield mdl-js-textfield">
                     <textarea class = "mdl-textfield__input" type = "text" rows =  "3" 
                        id = "text7" ></textarea>
                     <label class = "mdl-textfield__label" for = "text7">Lines...</label>
                  </div>
               </form>
            </td>
            
            <td>
               <form action = "#">
                  <div class = "mdl-textfield mdl-js-textfield mdl-textfield--expandable">
                     <label class = "mdl-button mdl-js-button mdl-button--icon" 
                        for = "text8">
                        <i class = "material-icons">search</i>
                     </label>
                     <div class = "mdl-textfield__expandable-holder">
                        <input class = "mdl-textfield__input" type = "text" id = "text8">
                        <label class = "mdl-textfield__label" for = "sample-expandable">
                           Expandable Input</label>
                     </div>
                  </div>
               </form>
            </td>
            <td> </td>
         </tr>
      </table>   
   </body>
</html>

结果

验证结果。