Material Design Lite - Campos de Texto

MDL fornece uma variedade de classes CSS para aplicar vários aprimoramentos visuais e comportamentais predefinidos e exibir os diferentes tipos de entradas de texto. A tabela a seguir lista as classes disponíveis e seus efeitos.

Sr. Não. Nome e descrição da classe
1

mdl-textfield

Identifica o contêiner como um componente MDL e é necessário no elemento div "externo".

2

mdl-js-textfield

Define o comportamento MDL básico para entrada e é necessário no elemento div "externo".

3

mdl-textfield__input

Identifica o elemento como entrada de campo de texto e é obrigatório no elemento de entrada ou textarea.

4

mdl-textfield__label

Identifica o elemento como rótulo de campo de texto e é necessário no elemento de rótulo para elementos de entrada ou textarea.

5

mdl-textfield--floating-label

Aplica efeito de rótulo flutuante e é opcional; continua o elemento div "externo".

6

mdl-textfield__error

Identifica span como uma mensagem de erro MDL e é opcional; continua o elemento span para o elemento de entrada MDL com padrão.

7

mdl-textfield--expandable

Identifica um div como um contêiner de campo de texto expansível MDL; usado para campos de entrada expansíveis e é obrigatório no elemento div "externo".

8

mdl-button

Identifica o rótulo como um botão de ícone MDL; usado para campos de entrada expansíveis e é obrigatório no elemento de rótulo do div "externo".

9

mdl-js-button

Define o comportamento básico para o contêiner de ícone; usado para campos de entrada expansíveis e é obrigatório no elemento de rótulo do div "externo".

10

mdl-button--icon

Identifica o rótulo como um contêiner de ícone MDL; usado para campos de entrada expansíveis e é obrigatório no elemento de rótulo do div "externo".

11

mdl-input__expandable-holder

Identifica um contêiner como um componente MDL; usado para campos de entrada expansíveis e é obrigatório no elemento div "interno".

12

is-invalid

Identifica o campo de texto como inválido no carregamento inicial e é opcional no elemento mdl-textfield.

Exemplo

O exemplo a seguir o ajudará a entender o uso das classes mdl-textfield para mostrar os diferentes tipos de campos de texto.

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>

Resultado

Verifique o resultado.