7. Lista de Elementos¶
As opções abaixo são elementos válidos na criação de templates.
button
datalist
div
fieldset
i
input
label
legend
optgroup
option
output
select
small
textarea
Veja mais um exemplo de template usando alguns dos elementos da Lista
$iconInputTemplate = new \Cajudev\UI\Template('icon-input', [
'div' => [
'attributes' => [
'class' => 'input-container'
],
'children' => [
'div' => [
'attributes' => [
'class' => 'icon-container'
],
'children' => [
'i' => [
'attributes' => [
'class' => 'icon icon-::icon'
],
]
]
],
'input' => [
'attributes' => [
'class' => 'input',
'id' => '::id',
'type' => '::type',
'placeholder' => '::placeholder'
],
],
],
],
]);
$easyForm = new \Cajudev\EasyForm([
'class' => 'd-flex flex-wrap'
]);
$easyForm->templates->add($iconInputTemplate);
$easyForm->create('icon-input', [
'::id' => 'email',
'::type' => 'email',
'::icon' => 'email',
'::placeholder' => 'Email',
]);
Resultado:
Para esse exemplo o seguinte css foi aplicado
.input-container {
box-shadow: 2px 2px 2px 0px #e3e4ff;
}
.icon-container {
width: 35px;
text-align: center;
background: linear-gradient(#ff471a, #ec3b0f);
margin-right: -1px;
float: left;
height: 100%;
}
.icon-email:before {
content: '\f0e0';
}
.icon {
font-size: 20px;
color: white;
vertical-align: sub;
}
.input {
padding-left: 10px;
padding-top: 3px;
border: solid 1px #71a6ff;
}