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.