• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Stylizowanie inputa

Object Storage Arubacloud
0 głosów
118 wizyt
pytanie zadane 10 listopada 2022 w HTML i CSS przez zbiku25 Bywalec (2,940 p.)

Cześć,

Próbuję stworzyć prosty formularz kontaktowy. Zależ mi na tym aby inputy układały się równo ale pomimo zastosowania tej samej klasy dla inputa typu "text" oraz inputa typu "submit" , długość tych inputów jest inna. Może wie ktoś z czego to wynika? Ponadto może znacie bardziej efektywny sposób wykorzystania css niż ja zapisałem?

HTML

<div id="contact">
		
	<form action="#" method="POST">
	<h3>Formularz Kontaktowy</h3>
	<div class="line"></div>

	<div class="row">
		<div id = "form1">
			<input class="norm" type="text" placeholder="Imię" />
			<input class="norm" type="text" placeholder="E-mail" />
			<input class="norm" type="text" placeholder="Numer telefonu" />
		</div>
			
		<div id="form2">
			<input class="message" type="text" placeholder="Twoja wiadomość" />
			<input class="norm" type="submit" />
		</div>
	</div>
	</form>
</div>

CSS

#form1
{
	display:flex;
	flex-direction:column;
	margin-right: 50px;
}


#form2
{
	display:flex;
	flex-direction:column;
}
.row
{
	display:flex;
	flex-direction:row;
}

.norm
{

	width: 250px;
	height:40px;
	background-color: #cacaca;
	border:none;
	margin-bottom:20px;
}

.message
{
	width: 250px;
	height:104px;
	background-color: #cacaca;
	border:none;
	margin-bottom:20px;
}

2 odpowiedzi

+1 głos
odpowiedź 10 listopada 2022 przez ScriptyChris Mędrzec (190,190 p.)

Minimalnie różne szerokości, z tego co widzę, wynikają z braku box-sizing: border-box (dobrze jest go ustawić globalnie, np. selektorem uniwersalnym).

Ponadto może znacie bardziej efektywny sposób wykorzystania css niż ja zapisałem?

Staraj się unikać stylowania po identyfikatorze. Deklaracje styli powielające te same reguły można łączyć w listy.

Poza tym, korzystaj z odpowiednich typów inputów (przy okazji: brakuje dla nich etykiet), bo u Ciebie wszystkie są typu tekstowego, mimo że masz tam email i numer telefonu. Kontrolki formularza można otoczyć w <fieldset> razem z <legend>.

komentarz 11 listopada 2022 przez zbiku25 Bywalec (2,940 p.)
Bardzo dziękuję za pomoc.
+1 głos
odpowiedź 10 listopada 2022 przez VBService Ekspert (253,420 p.)
edycja 10 listopada 2022 przez VBService

A jak chcesz "obsłużyć" formularz skoro pola (input-y) nie posiadają atrybutu name.

W linii 15 chyba chodziło Tobie o <textarea>

<textarea class="message" name="message" placeholder="Twoja wiadomość"></textarea>

a w css do .message dopisz wtedy

resize: none;

druga sprawa pole message lekko "wystaje"

i samo ustawienie

box-sizing: border-box;

 nie wystarczy. 

Skoro masz dla .norm

height: 40px;
margin-bottom: 20px;

to dla messag  masz 40 + 40 + 20 czyli wpisz

height: 100px;

możesz też użyć calc() i zmienne css, wtedy zapis zrobić np. taki

:root {
  --norm-height: 40px;
  --norm-margin-bottom: 20px;
}
 
.norm,
.message
{ 
    width: 250px;
    height: var(--norm-height);
    background-color: #cacaca;
    border: none;
    margin-bottom: var(--norm-margin-bottom);
}
 
.message
{
    height: calc((var(--norm-height) * 2) + var(--norm-margin-bottom));
    resize: none; /* gdy zastosujesz <textarea> */
}

 

P.S. też możesz ostylować:

1
komentarz 11 listopada 2022 przez zbiku25 Bywalec (2,940 p.)
Bardzo dziękuję za pomoc.

Podobne pytania

0 głosów
1 odpowiedź 234 wizyt
pytanie zadane 23 października 2016 w HTML i CSS przez Avenue Użytkownik (940 p.)
0 głosów
2 odpowiedzi 565 wizyt
pytanie zadane 26 sierpnia 2016 w JavaScript przez 123skiper Bywalec (2,170 p.)
+1 głos
1 odpowiedź 92 wizyt
pytanie zadane 31 maja 2021 w HTML i CSS przez KFC Użytkownik (610 p.)

92,579 zapytań

141,432 odpowiedzi

319,664 komentarzy

61,964 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...