Skip to content
Open
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 47 additions & 1 deletion .linthtmlrc.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,49 @@
{
"extends": "@mate-academy/linthtml-config"
"attr-bans": [
"align",
"background",
"bgcolor",
"border",
"frameborder",
"style"
],
"attr-name-ignore-regex": "viewBox",
"attr-no-dup": true,
"attr-quote-style": "double",
"attr-req-value": true,
"class-no-dup": true,
"doctype-first": true,
"doctype-html5": true,
"fig-req-figcaption": true,
"head-req-title": true,
"html-req-lang": true,
"id-class-style": false,
"id-no-dup": true,
"img-req-src": true,
"img-req-alt": "allownull",
"indent-width": 2,
"indent-style": "spaces",
"indent-width-cont": true,
"input-radio-req-name": true,
"spec-char-escape": true,
"tag-bans": [
"b",
"i",
"u",
"center",
"style",
"marquee",
"font",
"s"
],
"tag-name-lowercase": true,
"tag-name-match": true,
"tag-self-close": "never",
"tag-close": true,
"text-ignore-regex": "&",
"title-no-dup": true,
"line-end-style": "lf",
"attr-new-line": 2,
"attr-name-style": "dash",
"attr-no-unsafe-char": true
}
7 changes: 4 additions & 3 deletions readme.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# HTML form
Replace `<your_account>` with your Github username and copy the links to Pull Request description:
- [DEMO LINK](https://<your_account>.github.io/layout_html-form/)
- [TEST REPORT LINK](https://<your_account>.github.io/layout_html-form/report/html_report/)
- [DEMO LINK](https://LabPetro.github.io/layout_html-form/)
- [TEST REPORT LINK](https://LabPetro.github.io/layout_html-form/report/html_report/)

> Follow [this instructions](https://mate-academy.github.io/layout_task-guideline/#how-to-solve-the-layout-tasks-on-github)
___
Expand Down Expand Up @@ -40,7 +40,7 @@ Create HTML page with form. On form submit send form data to `https://mate-acade
- Age should be at least `1` and at max `100` with a default value of `12`
- The email field should have placeholder value: `email@example.com`.
- Text fields should have `autocomplete="off"`.
- `Submit` button should have a `type="submit"`
- `Submit` button should have a `type="submit"`
- Vertical distance between inputs should be `10px`
- Vertical distance between groups should be `20px`
- Any other styles should be browser default
Expand All @@ -62,3 +62,4 @@ Create HTML page with form. On form submit send form data to `https://mate-acade
></textarea>
```


171 changes: 170 additions & 1 deletion src/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,176 @@
<link rel="stylesheet" href="./style.css">
</head>
<body>
<h1>HTML Form</h1>
<script type="text/javascript" src="./main.js"></script>
<form
action="https://mate-academy-form-lesson.herokuapp.com/create-application"
method="post">
Comment on lines +15 to +17

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<form
action="https://mate-academy-form-lesson.herokuapp.com/create-application"
method="post">
<form
action="https://mate-academy-form-lesson.herokuapp.com/create-application"
method="post"
>


<fieldset class="container">
Comment on lines +18 to +19

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't add spaces between parent and child components

<legend>Personal information</legend>
<label for="surname">Surname:</label>
<input
class="form_group"
type="text"
id="surname"
name="surname"
autocomplete="off"
>
<br>
<label for="name">Name:</label>
<input
class="form_group"
type="text"
id="name"
name="name"
autocomplete="off"
>
<br>
<label for="age">How old are You?</label>
<input
class="form_group"
type="number"
id="age"
name="age"
value="12"
min="1"
max="100"
>
<br>
<label for="date">Full date of birth:</label>
<input
class="form_group"
type="date"
id="date"
name="date"
>
<br>
<label for="box">I accept the term of the agreement</label>
<input
type="checkbox"
id="box"
name="box"
>
<br>
</fieldset>

<fieldset class="container">
<legend>Registration</legend>
<label for="adress">E-mail:</label>
<input
type="email"
id="adress"
class="form_group"
name="adress"
placeholder="email@example.com"
>
<br>
<label for="secret">Password:</label>
<input
type="password"
id="secret"
name="secret"
required
autocomplete="off"
minlength="8"
maxlength="15"
>
</fieldset>

<fieldset class="container">
<legend>An interesting fact about you!</legend>

<div class="form_group">
<label for="cat">Do you love cats?</label>

<label for="yes">Yes</label>
<input

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add a label to each radio button. It doesn't work correctly now

Screen.Recording.2023-05-17.at.13.49.21.mov

id="yes"
type="radio"
name="pet"
value="yes"
>
<label for="no">No</label>
<input
id="no"
type="radio"
name="pet"
value="No"
>

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<label for="yes">Yes</label>
<input
id="yes"
type="radio"
name="pet"
value="yes"
>
<label for="no">No</label>
<input
id="no"
type="radio"
name="pet"
value="No"
>
<label>
<input
id="yes"
type="radio"
name="pet"
value="yes"
>
Yes
</label>
<label>
<input
id="no"
type="radio"
name="pet"
value="No"
>
No
</label>

You can wrap it into label tag to fix previous comment

</div>

<div class="form_group">
<label for="color">What is your favorite color?</label>
<input
type="color"
id="color"
name="color"
>
</div>

<div class="form_group">
<label for="time">What time do you go to bed?</label>
<input
type="time"
id="time"
name="time"
>
</div>

<div class="form_group">
<label for="brand">What are your favorite brand of cars?</label>
<select
name="car"
id="brand"
required
multiple
>
<option value="BMW">BMW</option>
<option value="Audi">Audi</option>
<option value="Lada">Lada</option>
</select>
</div>

<div>
<label for="review">How do you rate our work?</label>
<input type="range"
id="review"
name="rating"
step="1"
value="0"
min="0"
max="5"
>

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<input type="range"
id="review"
name="rating"
step="1"
value="0"
min="0"
max="5"
>
<input
type="range"
id="review"
name="rating"
step="1"
value="0"
min="0"
max="5"
>

</div>
</fieldset>
Comment on lines +150 to +161

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
</div>
</fieldset>
</div>
</fieldset>


<fieldset class="container">
<legend>Additional info</legend>

<div class="form-block">
<label for="comments">Comments:</label>

<textarea name="write"
id="comments"
autocomplete="off"
required
></textarea>

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<textarea name="write"
id="comments"
autocomplete="off"
required
></textarea>
<textarea
name="write"
id="comments"
autocomplete="off"
required
></textarea>

</div>

<label for="approve">Would you recommend us?</label>
<select
name="answer"
id="approve"
required
>
<option value="answer">Yes</option>
<option value="answer">No</option>

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<option value="answer">Yes</option>
<option value="answer">No</option>
<option value="yes">Yes</option>
<option value="no">No</option>

</select>
</fieldset>

<button type="submit">
Submit
</button>
</form>
</body>
</html>
13 changes: 12 additions & 1 deletion src/style.css
Original file line number Diff line number Diff line change
@@ -1 +1,12 @@
/* styles go here */
.form_group {
margin-bottom: 10px;
}

.container {
margin-bottom: 20px;
}

.form-block {
display: block;
margin-bottom: 10px;
}