Rastman
24.02.2010, 23:17:55
witam,
mam taki kod:
<td style="width:850px;color:white;" valign="bottom" colspan="4" height="146" background="images/cala4a.jpg">
<?php
if(!isset($_SESSION['uzytkownik']))
{
echo(" <form method=\"POST\">");
echo("
Login:
<input class=\"top\" type=\"text\">");
echo("
Hasło:
<input class=\"top\" type=\"password\">");
echo("
<input type=\"image\" src=\"images/zaloguj.jpg\" style=\"margin-bottom:0px;\">");
echo("
<input type=\"image\" src=\"images/zarejestruj.jpg\" style=\"margin-bottom:0px;\">");
}
?>
znaczniki image formularza są na stronie wyświetlane wyżej niż znaczniki text i password. Jak należy sformatować style dla tych znaczników, aby wszystkie cztery znajdowały się w jednej linii?
krzysztof_kf
25.02.2010, 00:30:24
pokaż to najlepiej na obrazku przykładowym szybciiej się dogadamy
grassmen
25.02.2010, 08:01:23
A czego nie zrobisz tego w tabelce i wtedy pozycjonuj stylami margin- top margin-bottom
echo("<form method=\"POST\">"); echo("<table width="100%"> <tr>"); echo("<td> Login:<input class=\"top\" type=\"text\"></td>"); echo("<td> Hasło:<input class=\"top\" type=\"password\"></td>"); echo("<td> <input type=\"image\" src=\"images/zaloguj.jpg\" style=\"margin-bottom:0px;\"></td>"); echo("<td> <input type=\"image\" src=\"images/zarejestruj.jpg\" style=\"margin-bottom:0px;\"></td>");
nie wiem czy zadział nie sprawdziłem ale przedstawiam jako pomysł ...
thek
25.02.2010, 09:08:31
Grassmen... Nie używa się tabelek do układania layoutu. To już technika wskazująca na brak umiejętności webmastera :)By były w jednej linii wystarczy dać float:left elementom i same się jeden obok drugiego ustawią.
grassmen
25.02.2010, 11:06:10
Thek ..... zaproponowałem rozwiązanie ... nie wydaje mi się żeby mówiło one o braku moich umiejętności ... jest sposobem rozwiązania pytania które zostało zadane w temacie jak rozwiąże to sobie Rastman jego sprawa ! jest to jakiś sposób może nie do końca ładny i teraz już modny ale jest ... pozdr
thek
25.02.2010, 13:17:28
A czy ja wspominałem, że świadczą konkretnie o Twoim? Jedynie tyle, że strona zbudowana za ich pomocą wskazuje na to, iż autor strony nie potrafi zrobić jej inaczej, a więc ma braki w stosowaniu nowocześniejszych rozwiązań. Tabelki stosuje się nadal ale mają one zgodnie z przeznaczeniem wyświetlać dane tabelaryczne, nie zaś służyć do cięcia layoutu na bloki funkcjonalne. Poza tym porównaj zgrabność kodu opartego na float z wrzuceniem wszystkiego do osobnych komórek tabeli. Ogrom nadmiarowego kodu tylko przy stosowaniu tabeli, na dodatek nieskalowalny w przyszłości i wiążący się z całkowitą przebudową tego fragmentu. Niefajne i czasochłonne. A wiesz jak to jest... "Czym skorupka za młodu nasiąknie..." lepiej nie uczyć takich rozwiązań młodych i nie wspominać, że kiedykolwiek istniały, albo wręcz mówić, że to fatalny sposób, którego nie powinno się używać.
Rastman
2.03.2010, 20:42:05
ja chcę się tylko dowiedzieć jak w 1 kolumnie tabeli ustawić input i image w taki sposób, żeby stały idealnie w jednej linii
Powiem tak... Robiąc to w sposób z tabelką i jedną kolumną w sposób jaki prezentujesz swoim kodem, nie uzyskasz tego efektu nigdy

Na każdej przeglądarce będzie to bowiem inaczej wyglądać. Da się to ostylować, ale wiąże się to z albo dwoma kolumnami tabeli, albo wrzuceniem tekstu będącego przed inputem w jakiś element z nadaną stałą szerokością (gdy ma to być równo w kolumnie). Jeśli ma to jednak być w jednej linii to tekst kładziesz do elementów i zarówno im, jaki i inputom nadajesz atrybut float:left.