2012-03-16 12 views
17

Mam następujący kod HTML i chcę wyśrodkować mój formularz.HTML: Jak wyśrodkować wyrównanie formularza

<form action="advsearcher.php" method="get"> 
    Search this website:<input align="center" type="text" name="search" /> 
    <input type="submit" value="Search"/> 
</form> 

Jak mogę to zrobić? Z góry z góry.

Odpowiedz

11

Będąc form element bloku, można wyśrodkować wyrównać go poprzez ustawienie jego marginesy boczne Auto:

form { margin: 0 auto; } 

EDIT:
Jak @moomoochoo słusznie zauważył, zasada ta będzie działać tylko wtedy, gdy elementowi blokowemu (twojemu formularzowi, w tym przypadku) przypisano określoną szerokość.
Ta sztuczka nie działa również w przypadku elementów pływających.

35

@Lucius i @ytrolasting mają to prawo.

Prawdopodobnie konieczne będzie podanie formularza o określonej width, aby działał prawidłowo.

form { 
margin: 0 auto; 
width:250px; 
} 
+0

masz rację .. Wziąłem że za pewnik. Mój błąd! – Lucius

+0

Dziękuję ... dodanie 'auto' zrobiło sztuczkę – user602599

16

Wystarczy umieścić kilka stylów CSS do tak

form { 
    text-align: center; 
} 

następnie gotowe!

+0

@JohannBehrens: Dlaczego dokładnie jest to zła praktyka? – favq

+2

@anonymous: Będziesz chciał oddzielić semantykę i projektowanie od siebie, używając TYLKO HTML w pliku .html i TYLKO CSS w pliku .css. Sprawia, że ​​twój kod jest czysty i uporządkowany, czytelny dla innych programistów lub projektantów, odporny na przyszłość i mógłbym trwać dłużej. –

+0

text-align: center działa. Po prostu użyj go w pliku css i wszystko jest w porządku. Możesz również użyć kodu

w kodzie HTML, ale jak zaznaczył @JohannBehrens, styl musi być oddzielny. Morever
jest przestarzały. Mój najlepszy zakład to wyrównanie tekstu: wyśrodkuj w arkuszu stylów na znaczniku formularza. –

1

Zastosowanie center:

<center><form></form></center>

Jest tylko jedna metoda, choć nie jest to advised.

+0

jest przestarzałe od czasu HTLM 4 – epox

+0

@epox, jak wyjaśniono w linku – Cilan

0
#form{ 
    position:fixed; 
    top:50%; 
    left:50%; 
    width:250px; 
} 

można regulować top & lewo w zależności od wielkości formy.

0
<center><form></form></center>  

działa w większości przypadków, takich jak The Wobbuffet wspomniano wyżej ...

+0

-1 '

' jest przestarzałe. 1. [W3Schools] (https://www.w3schools.com/tags/tag_center.asp) 2. [Mozilla] (https://developer.mozilla.org/en-US/docs/Web/HTML/Element/center) –

-1

prosty sposób: Dodaj "centrum" tag przed tagu formularza

+3

Środek jest przestarzały. –

0

Spróbuj tego: Ustaw szerokość Formularz jako 20% przez:
width : 20%; teraz, jeśli całe płótno jest w 100%, środek ma 50%. Tak aby wyrównać środek postaci w centrum miasta, 50- (20/2) = 40. zatem ustawić lewy margines 40% w ten sposób:
left : 40%;

Powiązane problemy