All language subtitles for 23. Building the contact form form - Part 1

af Afrikaans
sq Albanian
am Amharic
ar Arabic
hy Armenian
az Azerbaijani
eu Basque
be Belarusian
bn Bengali
bs Bosnian
bg Bulgarian
ca Catalan
ceb Cebuano
ny Chichewa
zh-CN Chinese (Simplified)
zh-TW Chinese (Traditional)
co Corsican
hr Croatian
cs Czech
da Danish
nl Dutch
en English Download
eo Esperanto
et Estonian
tl Filipino
fi Finnish
fr French
fy Frisian
gl Galician
ka Georgian
de German
el Greek
gu Gujarati
ht Haitian Creole
ha Hausa
haw Hawaiian
iw Hebrew
hi Hindi
hmn Hmong
hu Hungarian
is Icelandic
ig Igbo
id Indonesian
ga Irish
it Italian
ja Japanese
jw Javanese
kn Kannada
kk Kazakh
km Khmer
ko Korean
ku Kurdish (Kurmanji)
ky Kyrgyz
lo Lao
la Latin
lv Latvian
lt Lithuanian
lb Luxembourgish
mk Macedonian
mg Malagasy
ms Malay
ml Malayalam
mt Maltese
mi Maori
mr Marathi
mn Mongolian
my Myanmar (Burmese)
ne Nepali
no Norwegian
ps Pashto
fa Persian
pl Polish
pt Portuguese
pa Punjabi
ro Romanian
ru Russian
sm Samoan
gd Scots Gaelic
sr Serbian
st Sesotho
sn Shona
sd Sindhi
si Sinhala
sk Slovak
sl Slovenian
so Somali
es Spanish
su Sundanese
sw Swahili
sv Swedish
tg Tajik
ta Tamil
te Telugu
th Thai
tr Turkish
uk Ukrainian
ur Urdu
uz Uzbek
vi Vietnamese
cy Welsh
xh Xhosa
yi Yiddish
yo Yoruba
zu Zulu
or Odia (Oriya)
rw Kinyarwanda
tk Turkmen
tt Tatar
ug Uyghur
Would you like to inspect the original subtitles? These are the user uploaded subtitles that are being translated: 1 1 00:00:01,403 --> 00:00:02,622 Welcome back. 2 2 00:00:02,622 --> 00:00:07,324 Let's build a simple contact form in this lecture. 3 3 00:00:07,324 --> 00:00:09,327 To be honest this section was not 4 4 00:00:09,327 --> 00:00:12,694 so much about making things beautiful and functional, 5 5 00:00:12,694 --> 00:00:14,725 but more to show you everything you need 6 6 00:00:14,725 --> 00:00:17,222 to know about forms so that you can build 7 7 00:00:17,222 --> 00:00:21,314 even bigger and more complex forms in the future. 8 8 00:00:21,314 --> 00:00:23,520 So, this is a simple contact form 9 9 00:00:23,520 --> 00:00:27,687 as you can find it in numerous websites out there. 10 10 00:00:29,093 --> 00:00:33,563 And in this lecture you'll learn a lot of new things. 11 11 00:00:33,563 --> 00:00:35,420 You'll learn how to build a useful form 12 12 00:00:35,420 --> 00:00:37,771 using new HTML elements such as 13 13 00:00:37,771 --> 00:00:41,854 form, label, input, select, option and text area. 14 14 00:00:43,228 --> 00:00:46,130 Then you will learn how to use CSS to format 15 15 00:00:46,130 --> 00:00:48,685 those different elements. 16 16 00:00:48,685 --> 00:00:50,102 So let's do this. 17 17 00:00:50,949 --> 00:00:53,508 So back in our brackets app, 18 18 00:00:53,508 --> 00:00:56,258 we'll create yet another section, 19 19 00:01:00,759 --> 00:01:03,176 this one called section form. 20 20 00:01:06,593 --> 00:01:09,593 And once again, we create a row here 21 21 00:01:11,150 --> 00:01:13,483 where we will put our title. 22 22 00:01:15,591 --> 00:01:18,841 So let's get the text for this section. 23 23 00:01:21,135 --> 00:01:23,385 That's not a lot this time. 24 24 00:01:26,766 --> 00:01:28,933 So the title is, this one. 25 25 00:01:33,064 --> 00:01:35,444 And now let's create our form. 26 26 00:01:35,444 --> 00:01:37,861 And we will do that in a row. 27 27 00:01:38,956 --> 00:01:41,373 So live, class and row again. 28 28 00:01:43,542 --> 00:01:47,375 Now, a form is like a group of input elements, 29 29 00:01:48,389 --> 00:01:50,943 and we have an HTML element 30 30 00:01:50,943 --> 00:01:54,310 where we need to put all of them, 31 31 00:01:54,310 --> 00:01:58,374 and this element is called the form element. 32 32 00:01:58,374 --> 00:02:02,041 And it needs to have a couple of attributes. 33 33 00:02:04,062 --> 00:02:06,297 One is the method. 34 34 00:02:06,297 --> 00:02:08,474 You will choose post here, 35 35 00:02:08,474 --> 00:02:12,509 but this is not relevant for us in this case, 36 36 00:02:12,509 --> 00:02:16,676 because this is only needed when we send this form 37 37 00:02:17,704 --> 00:02:21,871 and that requires a lot of programming in other languages 38 38 00:02:23,103 --> 00:02:26,789 and we will not talk about this in this course. 39 39 00:02:26,789 --> 00:02:29,721 So in this course we will only format this form, 40 40 00:02:29,721 --> 00:02:33,755 but we will not be able to send anything from it. 41 41 00:02:33,755 --> 00:02:37,528 So another attribute that we need to define is the action, 42 42 00:02:37,528 --> 00:02:39,705 which is like a link. 43 43 00:02:39,705 --> 00:02:41,127 So it is empty in this case, 44 44 00:02:41,127 --> 00:02:44,044 and the action could be the script, 45 45 00:02:45,278 --> 00:02:49,051 which handles how the form will be sent. 46 46 00:02:49,051 --> 00:02:51,548 Which, again, we will not talk about 47 47 00:02:51,548 --> 00:02:54,334 in this specific course. 48 48 00:02:54,334 --> 00:02:58,501 And then, also, a class, I will call this contact form. 49 49 00:03:02,780 --> 00:03:06,947 Alright, now we can fill this form with our elements. 50 50 00:03:08,295 --> 00:03:11,712 And we will put a couple of rows in here, 51 51 00:03:12,561 --> 00:03:16,277 and in each of those rows we will then have 52 52 00:03:16,277 --> 00:03:18,694 our different input elements. 53 53 00:03:20,021 --> 00:03:23,438 So we will have one column for the label, 54 54 00:03:24,403 --> 00:03:28,375 for example, name, email address, or something like that, 55 55 00:03:28,375 --> 00:03:31,875 and then one column for the input element. 56 56 00:03:35,202 --> 00:03:39,369 So, it is a column and now it's something a little special 57 57 00:03:42,061 --> 00:03:46,807 because we want one column to be bigger than the other one. 58 58 00:03:46,807 --> 00:03:49,440 So I will say that I want the first column 59 59 00:03:49,440 --> 00:03:52,398 to be a span one of three, 60 60 00:03:52,398 --> 00:03:55,481 such as we used a lot of times before 61 61 00:04:00,103 --> 00:04:04,270 and then the second column will be span two of three. 62 62 00:04:12,163 --> 00:04:16,246 So these two columns together make the whole row, 63 63 00:04:18,795 --> 00:04:21,128 so one plus two makes three. 64 64 00:04:22,241 --> 00:04:27,019 And this means that this column will be twice as wide 65 65 00:04:27,019 --> 00:04:28,970 as this column here. 66 66 00:04:28,970 --> 00:04:32,637 And I will actually show you how this works. 67 67 00:04:34,008 --> 00:04:38,175 So the one of three has a width of 32%, approximately, 68 68 00:04:40,412 --> 00:04:44,579 and span two of three will have 63% approximately. 69 69 00:04:48,735 --> 00:04:52,902 Alright, so as I said in the first column we want the label 70 70 00:04:54,098 --> 00:04:57,181 and we have an HTML element for that, 71 71 00:04:59,202 --> 00:05:03,753 which goes like this, it's just labeled and then, 72 72 00:05:03,753 --> 00:05:05,996 let me see, it is name. 73 73 00:05:05,996 --> 00:05:10,515 The first one is name, and that's it for now. 74 74 00:05:10,515 --> 00:05:13,348 And now we want a little text box, 75 75 00:05:14,286 --> 00:05:18,369 and in order to do that, we use the input element 76 76 00:05:19,552 --> 00:05:22,803 and the type of this will be text. 77 77 00:05:22,803 --> 00:05:25,761 So you can see in this list here there are lots 78 78 00:05:25,761 --> 00:05:29,391 of different input types and we will use some of them, 79 79 00:05:29,391 --> 00:05:33,224 but for now, I will just use the text element. 80 80 00:05:36,814 --> 00:05:40,981 Now, in each of those, we should also give those a name 81 81 00:05:43,185 --> 00:05:47,801 because that name will later be used to send that form. 82 82 00:05:47,801 --> 00:05:51,968 Let's call it name, because that's what it is here, right? 83 83 00:05:53,490 --> 00:05:56,676 And now I will also define an ID here, 84 84 00:05:56,676 --> 00:05:59,017 which is also name. 85 85 00:05:59,017 --> 00:06:02,560 And another interesting thing we can do here is placeholder, 86 86 00:06:02,560 --> 00:06:05,844 and the placeholder is the text that appears 87 87 00:06:05,844 --> 00:06:08,672 inside of the text field 88 88 00:06:08,672 --> 00:06:11,662 before we write anything inside of it. 89 89 00:06:11,662 --> 00:06:15,245 So here I will say, for example, your name. 90 90 00:06:18,619 --> 00:06:22,394 And the last thing here, we can just add this keyword, 91 91 00:06:22,394 --> 00:06:26,561 required, and if we do so, the browser will not allow us 92 92 00:06:27,433 --> 00:06:30,976 to send a form without completing this field. 93 93 00:06:30,976 --> 00:06:32,699 So this is very handy. 94 94 00:06:32,699 --> 00:06:36,405 You can just write required and then Google Chrome, 95 95 00:06:36,405 --> 00:06:40,155 or whatever browser, will handle that for us. 96 96 00:06:41,183 --> 00:06:46,157 Okay, I will just show you how this looks like by now. 97 97 00:06:46,157 --> 00:06:50,578 Nothing special, of course, but here it goes. 98 98 00:06:50,578 --> 00:06:54,967 So this is a placeholder and this the first column, 99 99 00:06:54,967 --> 00:06:56,202 and this is the second column. 100 100 00:06:56,202 --> 00:06:58,218 And as you can see, it's much wider. 101 101 00:06:58,218 --> 00:07:02,411 The text field is not as wide as the column yet 102 102 00:07:02,411 --> 00:07:04,589 but we will change that once we come 103 103 00:07:04,589 --> 00:07:07,256 to the CSS part of this lecture. 104 104 00:07:08,425 --> 00:07:10,896 So for now, let's continue 105 105 00:07:10,896 --> 00:07:13,529 and I will keep on adding some rows here. 106 106 00:07:13,529 --> 00:07:16,279 So the next one is for the email. 107 107 00:07:17,709 --> 00:07:20,431 So I will change it here, 108 108 00:07:20,431 --> 00:07:24,348 and you can actually also change the type here, 109 109 00:07:26,084 --> 00:07:29,667 to email because that's one of the possible 110 110 00:07:30,605 --> 00:07:32,022 HTML input types. 111 111 00:07:33,402 --> 00:07:35,854 And so the browser will recognize 112 112 00:07:35,854 --> 00:07:40,021 that you need to write an email inside of the field. 113 113 00:07:42,367 --> 00:07:46,367 Well I will call this email and here your email, 114 114 00:07:49,110 --> 00:07:53,133 and this field's also required and can only be sent 115 115 00:07:53,133 --> 00:07:57,300 if a valid email address was written inside of that field. 116 116 00:08:00,681 --> 00:08:04,848 Okay, so yet another line is, what do we have here? 117 117 00:08:09,110 --> 00:08:11,370 How did you find us? 118 118 00:08:11,370 --> 00:08:14,620 Maybe we can put a little dropdown box? 119 119 00:08:19,646 --> 00:08:21,753 We will not use this, 120 120 00:08:21,753 --> 00:08:25,336 so dropdown box is just a couple of options 121 121 00:08:27,806 --> 00:08:30,450 where you can choose one from. 122 122 00:08:30,450 --> 00:08:34,617 And in order to do that, we use the select element 123 123 00:08:37,155 --> 00:08:39,405 and we'll call this find us 124 124 00:08:42,059 --> 00:08:44,392 and also add the ID find us. 125 125 00:08:45,622 --> 00:08:49,789 And I will tell you in a moment why we need these IDs here. 126 126 00:08:52,518 --> 00:08:53,768 So don't worry. 127 127 00:08:54,778 --> 00:08:57,537 And now, each of the options that we want here 128 128 00:08:57,537 --> 00:09:01,287 needs to be defined using the action element. 129 129 00:09:06,694 --> 00:09:10,861 And we need to specify a value, I will do that in a moment, 130 130 00:09:13,475 --> 00:09:16,885 and then the text we want to see. 131 131 00:09:16,885 --> 00:09:21,559 So in the first one I want to say, so how did you find us? 132 132 00:09:21,559 --> 00:09:25,726 Let's say, friends, and the value here can be friends. 133 133 00:09:29,413 --> 00:09:33,913 And again, this value here source then for the script 134 134 00:09:33,913 --> 00:09:37,913 that will handle the form once the form is sent, 135 135 00:09:39,430 --> 00:09:43,597 which again we will not be able to do in this course. 136 136 00:09:46,212 --> 00:09:48,712 So next, what can we put here? 137 137 00:09:50,656 --> 00:09:53,323 Um, for instance, search engine. 138 138 00:09:57,744 --> 00:09:58,661 So, search, 139 139 00:10:02,188 --> 00:10:05,271 or maybe it was an ad, advertisement. 140 140 00:10:15,713 --> 00:10:19,796 And just to complete this, we can say we found it 141 141 00:10:21,613 --> 00:10:23,113 in some other way. 142 142 00:10:24,371 --> 00:10:27,288 Alright, so, how does it look like? 143 143 00:10:29,467 --> 00:10:31,842 So we have the options we put there 144 144 00:10:31,842 --> 00:10:34,092 inside of this little list. 145 145 00:10:36,517 --> 00:10:40,118 So this is starting to look great, right? 146 146 00:10:40,118 --> 00:10:43,221 And we can also do another thing here. 147 147 00:10:43,221 --> 00:10:46,971 We can choose one of these and say, selected, 148 148 00:10:48,317 --> 00:10:50,616 which is this one, this will be the first one 149 149 00:10:50,616 --> 00:10:53,029 that will be selected, see? 150 150 00:10:53,029 --> 00:10:54,196 Search engine. 151 151 00:10:57,129 --> 00:11:01,296 Alright, I don't want this here, let's put it here. 152 152 00:11:04,302 --> 00:11:08,469 Now the next thing is to ask us if we want a newsletter. 153 153 00:11:10,883 --> 00:11:14,800 So again we want a row with a label newsletter. 154 154 00:11:21,841 --> 00:11:24,676 And now I will issue another input type 155 155 00:11:24,676 --> 00:11:26,759 and this one is checkbox. 156 156 00:11:28,201 --> 00:11:31,342 So checkbox is just what the name says, 157 157 00:11:31,342 --> 00:11:33,258 it's a box where you can choose 158 158 00:11:33,258 --> 00:11:36,974 yes I want it or no I don't want it, 159 159 00:11:36,974 --> 00:11:41,057 and the name here will be newsletter or just news 160 160 00:11:42,415 --> 00:11:44,165 and the ID also news. 161 161 00:11:45,518 --> 00:11:48,768 Placeholder, yes of course, none of it. 162 162 00:11:51,418 --> 00:11:54,905 And here I can say that I want this checkbox 163 163 00:11:54,905 --> 00:11:57,655 to be checked from the beginning, 164 164 00:11:59,196 --> 00:12:02,261 so the default will be that it is checked. 165 165 00:12:02,261 --> 00:12:06,428 And then some text here, for instance, yes please. 166 166 00:12:09,349 --> 00:12:10,843 So it's already selected there 167 167 00:12:10,843 --> 00:12:13,525 and then we have our text there. 168 168 00:12:13,525 --> 00:12:15,692 So just a simple checkbox. 169 169 00:12:16,552 --> 00:12:20,345 Now the last thing is wrap as align, 170 170 00:12:20,345 --> 00:12:23,012 so that means that it is a field 171 171 00:12:24,099 --> 00:12:27,766 where we can write some email, some message. 172 172 00:12:30,633 --> 00:12:34,800 And in order to do that we want a bigger text box. 173 173 00:12:38,122 --> 00:12:39,372 Copy this here. 174 174 00:12:43,869 --> 00:12:46,359 So we will use something different 175 175 00:12:46,359 --> 00:12:50,535 'cause we want a big text area and that's exactly 176 176 00:12:50,535 --> 00:12:52,952 the name of the HTML element. 177 177 00:12:55,363 --> 00:12:58,236 And this also needs some attributes, 178 178 00:12:58,236 --> 00:13:01,069 so I will call this name, message. 179 179 00:13:04,481 --> 00:13:08,648 And it can also have a placeholder like your message. 180 180 00:13:09,845 --> 00:13:12,795 Okay, and then the last thing 181 181 00:13:12,795 --> 00:13:16,962 each form should of course have is a submit button. 182 182 00:13:24,595 --> 00:13:29,461 So we don't want anything in here because we want the button 183 183 00:13:29,461 --> 00:13:33,063 to be aligned with the fields of this form, 184 184 00:13:33,063 --> 00:13:35,515 and such as I did in the section before, 185 185 00:13:35,515 --> 00:13:38,598 I will use the NBSP special character 186 186 00:13:39,959 --> 00:13:43,376 so that we have an invisible space there. 187 187 00:13:46,012 --> 00:13:49,262 And the button is also an inbox element 188 188 00:13:50,418 --> 00:13:54,585 and it's called submit, and doesn't need any of this. 189 189 00:13:59,000 --> 00:14:01,500 But it has the value attribute 190 190 00:14:04,671 --> 00:14:08,157 where we will put the text we want to see on the button, 191 191 00:14:08,157 --> 00:14:11,074 and in this place just say send it. 192 192 00:14:12,372 --> 00:14:13,955 We don't need this. 193 193 00:14:18,080 --> 00:14:20,330 So save this and let's see. 194 194 00:14:21,605 --> 00:14:23,444 So this is a bigger text field 195 195 00:14:23,444 --> 00:14:27,527 and we can actually resize this in Google Chrome. 196 196 00:14:29,421 --> 00:14:32,984 And then the button, and as you see this field, 197 197 00:14:32,984 --> 00:14:36,700 since I didn't fill it out, Google Chrome tells me, 198 198 00:14:36,700 --> 00:14:38,654 Please fill out this field. 199 199 00:14:38,654 --> 00:14:42,237 And if I do, it will not say fill this out. 200 200 00:14:44,631 --> 00:14:48,156 And I'll, since I said this would be an email field, 201 201 00:14:48,156 --> 00:14:52,151 Google Chrome knows that I should include 202 202 00:14:52,151 --> 00:14:55,901 the special symbol here in the email address. 203 203 00:14:56,853 --> 00:15:00,953 So one last thing is, as I promised you I would explain 204 204 00:15:00,953 --> 00:15:04,401 to you why I included these name IDs here 205 205 00:15:04,401 --> 00:15:07,312 and that's for a simple reason, 206 206 00:15:07,312 --> 00:15:11,479 because here in the label we can use the for attribute 207 207 00:15:13,213 --> 00:15:16,213 and then put the name of the ID here 208 208 00:15:18,040 --> 00:15:21,411 so we kind of link the label with the input 209 209 00:15:21,411 --> 00:15:23,494 and this is what happens. 210 210 00:15:24,362 --> 00:15:28,529 So now, we can click this and then the field gets selected. 211 211 00:15:32,522 --> 00:15:33,522 Cool, right? 212 212 00:15:34,476 --> 00:15:37,695 Do this for the other ones as well. 213 213 00:15:37,695 --> 00:15:38,612 For, email. 214 214 00:15:41,832 --> 00:15:45,499 And this actually only works with text forms 215 215 00:15:48,192 --> 00:15:51,025 and also with this select element. 216 216 00:15:54,054 --> 00:15:58,422 So this one is find us, but it doesn't work 217 217 00:15:58,422 --> 00:16:02,339 with a checkbox and neither with the text area, 218 218 00:16:04,360 --> 00:16:07,502 so I will just leave it like this. 219 219 00:16:07,502 --> 00:16:11,169 And now if I click here, this gets selected. 220 220 00:16:12,943 --> 00:16:16,443 Okay, I think for the HTML part, that's it 221 221 00:16:17,693 --> 00:16:20,988 and so in the next lecture, we will just format this 222 222 00:16:20,988 --> 00:16:25,126 to make it look great, such as we always do. 223 223 00:16:25,126 --> 00:16:27,376 Alright, so, see you there! 19555

Can't find what you're looking for?
Get subtitles in any language from opensubtitles.com, and translate them here.