COMPONENT

C-FORM

Demo Section

Each variation will be presented in the following sections.

Fields

Checkboxes
Date & Datepicker
Differen Input Types
Radio Buttons
Label for radio buttons
Textarea
Submit

Technical Details

Form

The form component is a complete solution for your forms. It provides

  • ajax functionality
  • a datepicker (pikaday.js)
  • custom styles for checkboxes and radio buttons
  • jQuery-free.

Requirements

  • Veams >= v5.0.0 - Veams Framework.

Usage

JavaScript Options:

submitOnLoad

Type: boolean | Default: false

Submit form on page load.

submitOnChange

Type: boolean | Default: true

Submit form on change.

loadingClass

Type: string | Default: null

Optional class to be set while fetching data from server.

successClass

Type: string | Default: 'is-success'

Class to be set after data was fetched successfully.

errorClass

Type: string | Default: 'is-error'

Class to be set after fetching data failed for some reason.

{
	"variations": {
		"default": {
			"docs": {
				"variationName": "Fields"
			},
			"settings": {
				"formClasses": "is-form",
				"formContextClass": "default",
				"formJsOptions": [
					{
						"optionsKey": "submitOnChange",
						"optionsValue": false,
						"optionsObject": true
					}
				],
				"formAction": "ajax/test.html",
				"formMethod": "GET",
				"formAjax": true
			},
			"content": {
				"formTitle": "Nullam mollis varius cursus.",
				"fieldsets": [
					{
						"settings": {
							"fieldsetClasses": "is-small",
							"legendClasses": "is-col-mobile-p-12"
						},
						"content": {
							"legend": "Checkboxes",
							"rows": [
								{
									"settings": {
										"rowClasses": "is-grid-row"
									},
									"content": {
										"cols": [
											{
												"settings": {
													"colClasses": "is-grid-col is-col-tablet-p-4",
													"typeOf": "checkbox",
													"required": false,
													"inputClasses": "is-checkboxes"
												},
												"content": {
													"checkboxes": [
														{
															"settings": {
																"wrapperClass": "is-wrapper",
																"inputClass": false,
																"required": false,
																"dataAttr": false,
																"id": "check-01",
																"labelClasses": "is-label"
															},
															"content": {
																"label": "It is a paradisematic country, in which roasted parts of sentences fly into your mouth."
															}
														}
													]
												}
											},
											{
												"settings": {
													"colClasses": "is-grid-col is-col-tablet-p-4",
													"typeOf": "checkbox",
													"required": false,
													"inputClasses": "is-checkboxes"
												},
												"content": {
													"checkboxes": [
														{
															"settings": {
																"wrapperClass": "is-wrapper",
																"inputClass": false,
																"required": false,
																"dataAttr": false,
																"id": "check-02",
																"labelClasses": "is-label"
															},
															"content": {
																"label": "Separated they live in Bookmarksgrove right at the coast of the Semantics..."
															}
														}
													]
												}
											},
											{
												"settings": {
													"colClasses": "is-grid-col is-col-tablet-p-4",
													"typeOf": "checkbox",
													"required": false,
													"inputClasses": "is-checkboxes"
												},
												"content": {
													"checkboxes": [
														{
															"settings": {
																"wrapperClass": "is-wrapper",
																"inputClass": false,
																"required": false,
																"dataAttr": false,
																"id": "check-03",
																"labelClasses": "is-label"
															},
															"content": {
																"label": "Far far away, behind the word mountains..."
															}
														}
													]
												}
											}
										]
									}
								}
							]
						}
					},
					{
						"settings": {
							"fieldsetClasses": "is-small",
							"legendClasses": "is-col-mobile-p-12"
						},
						"content": {
							"legend": "Date & Datepicker",
							"rows": [
								{
									"settings": {
										"rowClasses": "is-grid-row"
									},
									"content": {
										"cols": [
											{
												"settings": {
													"colClasses": "is-grid-col is-col-tablet-p-4",
													"id": "date",
													"inputClasses": "is-date",
													"required": false,
													"type": "date",
													"typeOf": "input"
												},
												"content": {
													"label": "Label for date"
												}
											},
											{
												"settings": {
													"colClasses": "is-grid-col is-col-tablet-p-4",
													"id": "datepicker",
													"inputClasses": "is-datepicker",
													"required": false,
													"type": "text",
													"typeOf": "datepicker"
												},
												"content": {
													"label": "Label for datepicker",
													"placeholder": "01.01.2017"
												}
											}
										]
									}
								}
							]
						}
					},
					{
						"settings": {
							"fieldsetClasses": "is-small",
							"legendClasses": "is-col-mobile-p-12"
						},
						"content": {
							"legend": "Differen Input Types",
							"rows": [
								{
									"settings": {
										"rowClasses": "is-grid-row"
									},
									"content": {
										"cols": [
											{
												"settings": {
													"colClasses": "is-grid-col is-col-tablet-p-4",
													"id": "button",
													"inputClasses": "is-btn",
													"required": false,
													"type": "button",
													"typeOf": "input",
													"attributes": [
														{
															"attrKey": "value",
															"attrValue": "Submit"
														}
													]
												},
												"content": {
													"label": "Label for button input"
												}
											},
											{
												"settings": {
													"colClasses": "is-grid-col is-col-tablet-p-4",
													"id": "email",
													"required": false,
													"type": "email",
													"typeOf": "input"
												},
												"content": {
													"label": "Label for email input",
													"placeholder": "max@mustermann.de"
												}
											},
											{
												"settings": {
													"colClasses": "is-grid-col is-col-tablet-p-4",
													"id": "file",
													"required": false,
													"type": "file",
													"typeOf": "input"
												},
												"content": {
													"label": "Label for file input"
												}
											},
											{
												"settings": {
													"colClasses": "is-grid-col is-col-tablet-p-4",
													"id": "number",
													"required": false,
													"type": "number",
													"typeOf": "input"
												},
												"content": {
													"label": "Label for number input"
												}
											},
											{
												"settings": {
													"colClasses": "is-grid-col is-col-tablet-p-4",
													"id": "password",
													"required": false,
													"type": "password",
													"typeOf": "input"
												},
												"content": {
													"label": "Label for password input",
													"placeholder": "Password"
												}
											},
											{
												"settings": {
													"colClasses": "is-grid-col is-col-tablet-p-4",
													"id": "range",
													"required": false,
													"type": "range",
													"typeOf": "input"
												},
												"content": {
													"label": "Label for range input"
												}
											},
											{
												"settings": {
													"colClasses": "is-grid-col is-col-tablet-p-4",
													"id": "tel",
													"required": false,
													"type": "tel",
													"typeOf": "input"
												},
												"content": {
													"label": "Label for tel input",
													"placeholder": "12312312"
												}
											},
											{
												"settings": {
													"colClasses": "is-grid-col is-col-tablet-p-4",
													"id": "text",
													"required": false,
													"type": "text",
													"typeOf": "input"
												},
												"content": {
													"label": "Label for text input",
													"placeholder": "Simple Placeholder"
												}
											},
											{
												"settings": {
													"colClasses": "is-grid-col is-col-tablet-p-4",
													"id": "time",
													"required": false,
													"type": "time",
													"typeOf": "input"
												},
												"content": {
													"label": "Label for time input"
												}
											},
											{
												"settings": {
													"colClasses": "is-grid-col is-col-tablet-p-4",
													"id": "url",
													"required": false,
													"type": "url",
													"typeOf": "input"
												},
												"content": {
													"label": "Label for url input",
													"placeholder": "http://www.veams.org/"
												}
											}
										]
									}
								}
							]
						}
					},
					{
						"settings": {
							"fieldsetClasses": "is-small",
							"legendClasses": "is-col-mobile-p-12"
						},
						"content": {
							"legend": "Radio Buttons",
							"rows": [
								{
									"settings": {
										"rowClasses": "is-grid-row"
									},
									"content": {
										"cols": [
											{
												"settings": {
													"colClasses": "is-grid-col is-col-tablet-p-4",
													"inputClasses": "is-radios",
													"id": "radios",
													"required": false,
													"typeOf": "radio"
												},
												"content": {
													"label": "Label for radio buttons",
													"radios": [
														{
															"settings": {
																"wrapperClass": "is-radio-wrapper",
																"inputClass": false,
																"required": false,
																"dataAttr": false,
																"id": "radio-01",
																"labelClasses": "is-label"
															},
															"content": {
																"label": "Radio 01"
															}
														},
														{
															"settings": {
																"wrapperClass": "is-radio-wrapper",
																"inputClass": false,
																"required": false,
																"dataAttr": false,
																"id": "radio-02",
																"labelClasses": "is-label"
															},
															"content": {
																"label": "Radio 02"
															}
														}
													]
												}
											}
										]
									}
								}
							]
						}
					},
					{
						"settings": {
							"legendClasses": "is-col-mobile-p-12"
						},
						"content": {
							"legend": "Textarea",
							"rows": [
								{
									"settings": {
										"rowClasses": "is-grid-row"
									},
									"content": {
										"cols": [
											{
												"settings": {
													"colClasses": "is-grid-col is-col-tablet-p-4",
													"inputClasses": "is-textarea",
													"id": "textarea",
													"required": false,
													"typeOf": "textarea"
												},
												"content": {
													"label": "Label for textarea",
													"placeholder": "Far far away, behind the word mountains, far from the countries Vokalia and Consonantia..."
												}
											}
										]
									}
								}
							]
						}
					},
					{
						"settings": {
							"legendClasses": "is-col-mobile-p-12"
						},
						"content": {
							"legend": "Submit",
							"rows": [
								{
									"settings": {
										"rowClasses": "is-grid-row"
									},
									"content": {
										"cols": [
											{
												"settings": {
													"colClasses": "is-grid-col is-col-tablet-p-4",
													"inputClasses": "is-submit",
													"id": "submit",
													"required": false,
													"typeOf": "submit",
													"disabled": true
												},
												"content": {
													"label": "Label for submit",
													"formSubmit": "Send"
												}
											}
										]
									}
								}
							]
						}
					}
				]
			}
		}
	}
}

c-form-usage

{{! wrapWith START: Form }}
{{#wrapWith "c-form" settings=settings}}
	{{#each content.fieldsets}}
		{{> c-form__fieldset}}
	{{/each}}
{{/wrapWith}}
{{! wrapWith END: Form}}

c-form.hbs

{{! ---
component: form
============================================

Options:
- options {Object} - Contains all options
- options.context {String} - Context class
- options.classes {String} - Modifier classes
- options.action {String} - Form action
- options.method {String} - Form method
- options.ajax {Boolean} - Init form module

Important Notes:
This component is written as wrapWith template, so you have the possibility to place your custom content.

--- }}


<form class="c-form{{#if options.settings.formContextClass}}--{{options.settings.formContextClass}}{{else}}--default{{/if}}
	{{#if options.settings.formClasses}} {{options.settings.formClasses}}{{/if}}"
      action="/{{@root.metadata.country}}/{{@root.metadata.lang}}{{options.settings.formAction}}"
      method="{{options.settings.formMethod}}"
      data-css="c-form"
	{{#if options.settings.formAjax}}
	  data-js-module="form-ajax"
		  {{#if options.settings.formJsOptions}} data-js-options='{
            {{#each options.settings.formJsOptions}}"{{optionsKey}}": {{#unless optionsObject}}"{{/unless}}{{{optionsValue}}}{{#unless optionsObject}}"{{/unless}}{{#if @last}}{{else}}, {{/if}}{{/each}}
         }'{{/if}}
	{{/if}}>
	{{{yield}}}
</form>

c-form__checkbox.hbs

<div class="form__checkbox">
	<div class="form__label-wrapper{{#if settings.labelClasses}} {{settings.labelClasses}}{{/if}}">
		<strong class="form__checkbox-legend">{{content.label}}</strong>
	</div>
	<div class="form__checkbox-wrapper">
		{{#if content.headline}}
			<h2 class="form__checkbox-headline">{{content.headline}}</h2>
		{{/if}}
		{{#each content.checkboxes}}
			{{> c-form__checkbox-item required=../settings.required}}
		{{/each}}
	</div>
</div>

c-form__fieldset.hbs

<fieldset class="form__fieldset{{#if settings.fieldsetClasses}} {{settings.fieldsetClasses}}{{/if}}">
	{{#if content.legend}}
		<legend class="form__legend{{#if settings.legendClasses}} {{settings.legendClasses}}{{/if}}">
			{{content.legend}}
			{{#if content.requiredNote}}
				<em class="form__required-note">{{content.requiredNote}}</em>
			{{/if}}
		</legend>{{/if}}

	{{#each content.rows}}
		{{>c-form__row this}}
	{{/each}}
</fieldset>

c-form__input.hbs

<div class="form__input">
	{{#if content.label}}
		<div class="form__label-wrapper">
			<label for="{{settings.id}}" class="form__input-label{{#if settings.labelClasses}} {{labelClasses}}{{/if}}">
				{{content.label}}
				{{#if settings.required}} <abbr title="Required">*</abbr>{{/if}}
			</label>
		</div>
	{{/if}}
	<div class="form__input-wrapper">
	<input id="{{settings.id}}" name="{{settings.id}}" type="{{settings.type}}"
		{{#if content.placeholder}} placeholder="{{content.placeholder}}{{#if settings.required}}*{{/if}}"{{/if}}
		{{#each settings.attributes}} {{attrKey}}="{{{attrValue}}}"{{/each}}
		{{#if settings.required}} required="required"{{/if}}
		{{#if settings.pattern}} pattern="{{{settings.pattern}}}"{{/if}}
		class="form__input-text{{#if settings.inputClasses}} {{settings.inputClasses}}{{/if}}"/>
	</div>
	{{#if content.errorMessage}}
		<div class="form__error" hidden="">
			<p>{{content.errorMessage}}</p>
		</div>
	{{/if}}
</div>

c-form__radio.hbs

<div class="form__radio">
	{{#if content.label}}
		<div class="form__label-wrapper">
			<strong class="form__radio-legend">{{content.label}}{{#if settings.required}} <abbr
					title="Required">*</abbr>{{/if}}</strong>
		</div>
	{{/if}}
	<div class="form__radio-wrapper">
		{{#if content.headline}}
			<h2 class="form__radio-headline">{{content.headline}}</h2>
		{{/if}}

		<ul class="form__radio-list{{#if settings.wrapperClass}} {{settings.wrapperClass}}{{/if}}">
			{{#each content.radios}}
				{{> c-form__radio-item required=../settings.required}}
			{{/each}}
		</ul>
	</div>
</div>

c-form__select.hbs

<div class="form__select">
	<div class="form__label-wrapper">
		<label for="{{id}}" class="form__select-label">
			{{content.label}}{{#if settings.required}} <abbr title="Required">*</abbr>{{/if}}
		</label>
	</div>
	<div class="form__select-wrapper">
		<select id="{{settings.id}}"{{#if settings.jsModule}} data-js-module="dropdown"{{/if}}
		        class="form__select-field{{#if settings.class}} {{settings.class}}{{/if}}" name="{{id}}"
		{{#each settings.attributes}} {{attrKey}}="{{{attrValue}}}"{{/each}}
		{{#if settings.required}} required="required"{{/if}}
		>
		{{#each content.options}}
			<option value="{{settings.val}}"{{#if settings.disabled}} disabled{{/if}}
				{{#if settings.selected}} selected{{/if}}>{{content.name}}</option>
		{{/each}}
		</select>
	</div>
</div>

c-form__submit.hbs

<button type="submit" class="form__submit{{#if settings.submitClass}} {{settings.submitClass}}{{/if}}"{{#if settings.disabled}} disabled{{/if}}>
	<span class="form__submit-text">{{content.formSubmit}}</span>
</button>

c-form__textarea.hbs

<div class="form__textarea">
	<div class="form__label-wrapper">
		<label for="{{settings.id}}" class="form__textarea-label">
			{{content.label}} {{#is settings.required "required"}}<abbr title="Required">*</abbr>{{/is}}
		</label>
	</div>
	<div class="form__textarea-wrapper">
		<textarea class="form__textarea-input" id="{{id}}" rows="5"
			{{#if content.placeholder}} placeholder="{{content.placeholder}}"{{/if}}
			{{#if settings.minlength}} data-minlength="{{settings.minlength}}"{{/if}}
			{{#if settings.maxlength}} data-maxlength="{{settings.maxlength}}"{{/if}}
			{{#if content.dataErrormessage}} data-errormessage="{{content.dataErrormessage}}"{{/if}}
			{{#if settings.required}} required="required"{{/if}}></textarea>
	</div>
</div>

c-form__datepicker.hbs

<div class="form__datepicker" data-js-module="form-datepicker">
	{{#if content.label}}
		<div class="form__label-wrapper">
			<label for="{{settings.id}}"
			       class="form__input-label{{#if settings.labelClasses}} {{settings.labelClasses}}{{/if}}">
				{{content.label}}{{#if settings.required}} <abbr title="Required">*</abbr>{{/if}}
			</label>
		</div>
	{{/if}}
	<div class="form__input-wrapper">
		<input id="{{settings.id}}" name="{{settings.id}}" type="{{settings.type}}"
			{{#if content.placeholder}} placeholder="{{content.placeholder}}{{/if}}
			{{#if settings.required}}*{{/if}}"
		{{#each settings.attributes}} {{attrKey}}="{{{attrValue}}}"{{/each}}
		{{#if settings.required}} required="required"{{/if}}
		{{#if settings.pattern}} pattern="{{{settings.pattern}}}"{{/if}}
		class="form__input-text{{#if settings.inputClasses}} {{settings.inputClasses}}{{/if}}"/>
	</div>
	{{#if content.errorMessage}}
		<div class="form__error" hidden="">
			<p>{{content.errorMessage}}</p>
		</div>
	{{/if}}
</div>
/* ===================================================
Component: Form
=================================================== */
/* ---------------------------------------------------
Global Styles
--------------------------------------------------- */
[data-css="c-form"] {
	/*
	Fieldset & Legend
	----------------------- */
	.form__fieldset {

	}

	.form__legend {
		margin-bottom: 30px;
		font-weight: bold;
	}

	/*
	Cols & Rows
	----------------------- */
	.form__row {
		margin-bottom: 30px;

		&.is-small-margin {
			margin-bottom: 20px;
		}
	}

	.form__col {
		margin-bottom: 2rem;

		&.is-text-center {
			text-align: center;
		}
	}

	/*
	Labels & Types
	----------------------- */
	.form__label-wrapper {
		margin-bottom: 1rem;
	}

	// Labels
	.form__input-label {
	}

	.form__input-wrapper {
	}

	.form__input-text {
		border-radius: 4px;
		padding: 8px;
		border: 1px solid #d2d2d2;
		width: 100%;
	}

	.form__input,
	.form__datepicker {
		input {
			padding: 13px;
			font-size: 14px;
		}
	}

	// Radio
	.form__radio {
	}

	.form__radio-wrapper {
	}

	.form__radio-legend {
	}

	.form__radio-list {
		display: block;
	}

	.form__radio-item {
		display: inline-block;
		margin-right: 30px;
	}

	.form__radio-input {
		@extend %visuallyhidden;

		&:checked {
			& ~ .form__radio-label {
				&::before {
					box-shadow: inset 0 0 0 10px #0aaaf1;
					border-color: #0aaaf1;
				}
			}
		}
	}

	.form__radio-label {
		position: relative;
		padding-left: 45px;
		line-height: 32px;
		display: inline-block;

		&:hover {
			cursor: pointer;
		}

		&::before {
			content: '';
			width: 32px;
			height: 32px;
			display: inline-block;
			position: absolute;
			top: 0;
			left: 0;
			background: #fff;
			border-radius: 50%;
			border: 1px solid #2b2b2b;
		}
	}

	// Select
	.form__select {
	}

	.form__select-wrapper {
	}

	.form__select-label {
	}

	.form__select-field {
	}

	// Textarea
	.form__textarea {
		width: 100%;
	}

	.form__textarea-wrapper {
	}

	.form__textarea-label {
	}

	.form__textarea-input {
		width: 100%;
	}

	// Checkbox
	.form__checkbox {
	}

	.form__checkbox-wrapper {
	}

	.form__checkbox-legend {
	}

	.form__checkbox-item {
	}

	.form__checkbox-input {
		@extend %visuallyhidden;

		&:checked {
			& ~ .form__checkbox-label {
				&::before {
					content: '✔';
					background-color: #0aaaf1;
					border-color: #00AAAA;
				}
			}
		}
	}

	.form__checkbox-description {
		margin-top: 20px;
	}

	.form__checkbox-label {
		position: relative;
		padding-left: 45px;
		line-height: 32px;
		display: inline-block;

		&:hover {
			cursor: pointer;
		}

		&::before {
			content: '';
			width: 32px;
			height: 32px;
			display: inline-block;
			position: absolute;
			top: 0;
			left: 0;
			margin-right: 13px;
			background: #fff;
			border-radius: 4px;
			border: 1px solid #ccc;
			line-height: 32px;
			text-align: center;
			color: #fff;
		}
	}

	// Submit
	.form__submit {
		@include reset-btn;

		background-color: #0aaaf1;
		padding: 1rem 2rem;
		font-size: 1.8rem;
		font-weight: 900;
		color: #fff;

		&:hover {
			cursor: pointer;
			background-color: darken(#0aaaf1, 20);
		}
	}

	.form__submit-text {
	}

	/*
	Error
	----------------------- */
	.form__error {
	}
}

/* ---------------------------------------------------
Context: Default
--------------------------------------------------- */
.c-form--default {
}

Fields

<form class="c-form--default
	 is-form" action="//ajax/test.html" method="GET" data-css="c-form" data-js-module="form-ajax" data-js-options='{
            "submitOnChange": false
         }'>
	<fieldset class="form__fieldset is-small">
		<legend class="form__legend is-col-mobile-p-12">
			Checkboxes
		</legend>
		<div class="form__row is-grid-row">
			<div class="form__col is-grid-col is-col-tablet-p-4">
				<div class="form__checkbox">
					<div class="form__label-wrapper">
						<strong class="form__checkbox-legend"></strong>
					</div>
					<div class="form__checkbox-wrapper">
						<div class="form__checkbox-item is-wrapper">
							<input id="check-01" name="check-01" type="checkbox" class="form__checkbox-input" />
							<label for="check-01" class="form__checkbox-label is-label">It is a paradisematic country, in which roasted parts of sentences fly into your mouth.
												</label>
						</div>
					</div>
				</div>
			</div>
			<div class="form__col is-grid-col is-col-tablet-p-4">
				<div class="form__checkbox">
					<div class="form__label-wrapper">
						<strong class="form__checkbox-legend"></strong>
					</div>
					<div class="form__checkbox-wrapper">
						<div class="form__checkbox-item is-wrapper">
							<input id="check-02" name="check-02" type="checkbox" class="form__checkbox-input" />
							<label for="check-02" class="form__checkbox-label is-label">Separated they live in Bookmarksgrove right at the coast of the Semantics...
												</label>
						</div>
					</div>
				</div>
			</div>
			<div class="form__col is-grid-col is-col-tablet-p-4">
				<div class="form__checkbox">
					<div class="form__label-wrapper">
						<strong class="form__checkbox-legend"></strong>
					</div>
					<div class="form__checkbox-wrapper">
						<div class="form__checkbox-item is-wrapper">
							<input id="check-03" name="check-03" type="checkbox" class="form__checkbox-input" />
							<label for="check-03" class="form__checkbox-label is-label">Far far away, behind the word mountains...
												</label>
						</div>
					</div>
				</div>
			</div>
		</div>
	</fieldset>
	<fieldset class="form__fieldset is-small">
		<legend class="form__legend is-col-mobile-p-12">
			Date &amp; Datepicker
		</legend>
		<div class="form__row is-grid-row">
			<div class="form__col is-grid-col is-col-tablet-p-4">
				<div class="form__input">
					<div class="form__label-wrapper">
						<label for="date" class="form__input-label">
												Label for date
												
											</label>
					</div>
					<div class="form__input-wrapper">
						<input id="date" name="date" type="date" class="form__input-text is-date" />
					</div>
				</div>
			</div>
			<div class="form__col is-grid-col is-col-tablet-p-4">
				<div class="form__datepicker" data-js-module="form-datepicker">
					<div class="form__label-wrapper">
						<label for="datepicker" class="form__input-label">
												Label for datepicker
											</label>
					</div>
					<div class="form__input-wrapper">
						<input id="datepicker" name="datepicker" type="text" placeholder="01.01.2017
											" class="form__input-text is-datepicker" />
					</div>
				</div>
			</div>
		</div>
	</fieldset>
	<fieldset class="form__fieldset is-small">
		<legend class="form__legend is-col-mobile-p-12">
			Differen Input Types
		</legend>
		<div class="form__row is-grid-row">
			<div class="form__col is-grid-col is-col-tablet-p-4">
				<div class="form__input">
					<div class="form__label-wrapper">
						<label for="button" class="form__input-label">
												Label for button input
												
											</label>
					</div>
					<div class="form__input-wrapper">
						<input id="button" name="button" type="button" value="Submit" class="form__input-text is-btn" />
					</div>
				</div>
			</div>
			<div class="form__col is-grid-col is-col-tablet-p-4">
				<div class="form__input">
					<div class="form__label-wrapper">
						<label for="email" class="form__input-label">
												Label for email input
												
											</label>
					</div>
					<div class="form__input-wrapper">
						<input id="email" name="email" type="email" placeholder="max@mustermann.de" class="form__input-text" />
					</div>
				</div>
			</div>
			<div class="form__col is-grid-col is-col-tablet-p-4">
				<div class="form__input">
					<div class="form__label-wrapper">
						<label for="file" class="form__input-label">
												Label for file input
												
											</label>
					</div>
					<div class="form__input-wrapper">
						<input id="file" name="file" type="file" class="form__input-text" />
					</div>
				</div>
			</div>
			<div class="form__col is-grid-col is-col-tablet-p-4">
				<div class="form__input">
					<div class="form__label-wrapper">
						<label for="number" class="form__input-label">
												Label for number input
												
											</label>
					</div>
					<div class="form__input-wrapper">
						<input id="number" name="number" type="number" class="form__input-text" />
					</div>
				</div>
			</div>
			<div class="form__col is-grid-col is-col-tablet-p-4">
				<div class="form__input">
					<div class="form__label-wrapper">
						<label for="password" class="form__input-label">
												Label for password input
												
											</label>
					</div>
					<div class="form__input-wrapper">
						<input id="password" name="password" type="password" placeholder="Password" class="form__input-text" />
					</div>
				</div>
			</div>
			<div class="form__col is-grid-col is-col-tablet-p-4">
				<div class="form__input">
					<div class="form__label-wrapper">
						<label for="range" class="form__input-label">
												Label for range input
												
											</label>
					</div>
					<div class="form__input-wrapper">
						<input id="range" name="range" type="range" class="form__input-text" />
					</div>
				</div>
			</div>
			<div class="form__col is-grid-col is-col-tablet-p-4">
				<div class="form__input">
					<div class="form__label-wrapper">
						<label for="tel" class="form__input-label">
												Label for tel input
												
											</label>
					</div>
					<div class="form__input-wrapper">
						<input id="tel" name="tel" type="tel" placeholder="12312312" class="form__input-text" />
					</div>
				</div>
			</div>
			<div class="form__col is-grid-col is-col-tablet-p-4">
				<div class="form__input">
					<div class="form__label-wrapper">
						<label for="text" class="form__input-label">
												Label for text input
												
											</label>
					</div>
					<div class="form__input-wrapper">
						<input id="text" name="text" type="text" placeholder="Simple Placeholder" class="form__input-text" />
					</div>
				</div>
			</div>
			<div class="form__col is-grid-col is-col-tablet-p-4">
				<div class="form__input">
					<div class="form__label-wrapper">
						<label for="time" class="form__input-label">
												Label for time input
												
											</label>
					</div>
					<div class="form__input-wrapper">
						<input id="time" name="time" type="time" class="form__input-text" />
					</div>
				</div>
			</div>
			<div class="form__col is-grid-col is-col-tablet-p-4">
				<div class="form__input">
					<div class="form__label-wrapper">
						<label for="url" class="form__input-label">
												Label for url input
												
											</label>
					</div>
					<div class="form__input-wrapper">
						<input id="url" name="url" type="url" placeholder="http://www.veams.org/" class="form__input-text" />
					</div>
				</div>
			</div>
		</div>
	</fieldset>
	<fieldset class="form__fieldset is-small">
		<legend class="form__legend is-col-mobile-p-12">
			Radio Buttons
		</legend>
		<div class="form__row is-grid-row">
			<div class="form__col is-grid-col is-col-tablet-p-4">
				<div class="form__radio">
					<div class="form__label-wrapper">
						<strong class="form__radio-legend">Label for radio buttons</strong>
					</div>
					<div class="form__radio-wrapper">
						<ul class="form__radio-list">
							<li class="form__radio-item">
								<input id="radio-01" name="radio" type="radio" value="radio-01" class="form__radio-input" />
								<label for="radio-01" class="form__radio-label">
														
														Radio 01
														
													</label>
							</li>
							<li class="form__radio-item">
								<input id="radio-02" name="radio" type="radio" value="radio-02" class="form__radio-input" />
								<label for="radio-02" class="form__radio-label">
														
														Radio 02
														
													</label>
							</li>
						</ul>
					</div>
				</div>
			</div>
		</div>
	</fieldset>
	<fieldset class="form__fieldset">
		<legend class="form__legend is-col-mobile-p-12">
			Textarea
		</legend>
		<div class="form__row is-grid-row">
			<div class="form__col is-grid-col is-col-tablet-p-4">
				<div class="form__textarea">
					<div class="form__label-wrapper">
						<label for="textarea" class="form__textarea-label">
											Label for textarea 
										</label>
					</div>
					<div class="form__textarea-wrapper">
						<textarea class="form__textarea-input" id="" rows="5" placeholder="Far far away, behind the word mountains, far from the countries Vokalia and Consonantia..."></textarea>
					</div>
				</div>
			</div>
		</div>
	</fieldset>
	<fieldset class="form__fieldset">
		<legend class="form__legend is-col-mobile-p-12">
			Submit
		</legend>
		<div class="form__row is-grid-row">
			<div class="form__col is-grid-col is-col-tablet-p-4">
				<button type="submit" class="form__submit" disabled>
									<span class="form__submit-text">Send</span>
								</button>
			</div>
		</div>
	</fieldset>
</form>