-
21. Data: 2010-01-11 17:10:57
Temat: Re: HTML 4.01 - dlaczego inputy muszą być w DIVach ?
Od: Krzysztof Warunek <k...@t...pl>
Dnia Mon, 11 Jan 2010 16:46:56 +0100, Marek napisał(a):
>>> zmuszająca do nadmiarowego ich stosowania.
>> możesz przytoczyć jakiś przykład, gdzie potwierdzisz
>> słowo "nadmiarowy", bo nie zauważam problemu
>
> oki :-) Napiszę w uproszczeniu. Jeśli niejasno się wyrażę - daj znać.
>
> HTML
>
> <form>
> <div>
> <label>etykieta<br><input></label>
> <label>etykieta<br><input></label>
> <label>etykieta<br><input></label>
> <button>
> </div>
> </form>
>
> CSS
>
> label {
> display: block;
> width:300px;
> height: 30px;
> }
>
> Po co w w/w kodzie ten DIV?
już zauważył D.S. bererka
poza tym fieldset
zresztą u wielu osób widziałem bład
w stylu <form> w jakimś blokowym.
-
22. Data: 2010-01-11 18:25:30
Temat: Re: HTML 4.01 - dlaczego inputy muszą być w DIVach ?
Od: Paweł Piskorz <n...@p...nie?>
On 2010-01-11 16:42, Marek wrote:
>>> Z jednej strony dokument HTML powinien mieć jak najmniej znaczników
>>
>> Bzdura i sam się do tego nie stosujesz*
>
> Tzn dokument HTML powinien Twoim zdaniem mieć jak najwięcej znaczników
> HTML a jak najmniej treści ? :-D
Dokument HTML powinien mieć tyle elementów (a nie znaczników) ile jest
potrzebne do semantycznego opisania treści w nim zawartej. Nie jak
najmniej, nie jak najwięcej ale tyle ile trzeba.
>> * zamykasz
>> body/colgroup/dd/dt/head/html/p/option/p/tbody/td/tf
oot/th/thead/tr,
>> pakujesz atrybuty w cudzysłowy i wstawiasz nawet te domyślne.
>
> Do zamykania tagów nie przyczepiłbym się. Pozostawianie ich otwartymi
> stwarza niejednoznaczności interpretacji kodu, utrubnia parsowanie itp.
Jesteś w stanie podać taką niejednoznaczność?
> Jednakże wstawianie znaczników dodatkowych - niczemu nie służących - to
> inna sprawa.
Ty nie rozróżniasz znaczników od elementów, więc nic dziwnego że nie
wiesz co do czego służy.
> To tak jakby wprowadzić obowiązek stosowania <div> zaraz po
> <body>. Ja tego nie pojmuję właśnie... Dlaczego trzeba go użyć po <form>
> a po <body>
A po body też trzeba (w Strict) mistrzu HTMLa.
http://www.w3.org/TR/html4/struct/global.html#edef-B
ODY
http://www.w3.org/TR/html4/interact/forms.html#edef-
FORM
-
23. Data: 2010-01-11 18:38:50
Temat: Re: HTML 4.01 - dlaczego inputy muszą być w DIVach ?
Od: Paweł Piskorz <n...@p...nie?>
On 2010-01-11 16:31, Marek wrote:
>> A jak dasz display:inline-block to będzie jaki? Obojniak? ;)
>
> No więc sam widzisz, że możemy tworzyć sobie nawet obojniaki. :-)
Widzę tylko to, że nie czytasz ani dokumentacji ani tego co się do
Ciebie pisze.
>> <p> nie może zawierać elementu blokowego i zostanie przez przeglądarkę
>> zamknięte przed <fieldset>*.
>
> Sprawa się komplikuje gdy mam sobie formularz z paroma <label>'ami
> zdefiniowanymi jako bloki po to aby ładnie się układały.
CSS służy do zmiany wyglądu a nie znaczenia HTML. Jesteś w stanie to pojąć?
> I cały czas pozostaje aktualne pytanie:
> po cholerę ten <p> czy <div>? Poza zaśmiecaniem kodu chyba nie pełni
> innej funkcji?
Pełni analogiczną funkcję jak li w ol/ul czy th/td w tr.
-
24. Data: 2010-01-12 09:14:00
Temat: Re: HTML 4.01 - dlaczego inputy muszą być w DIVach ?
Od: "Marek" <m...@s...interia.pl>
> Dokument HTML powinien mieć tyle elementów (a nie znaczników) ile jest
> potrzebne do semantycznego opisania treści w nim zawartej. Nie jak
> najmniej, nie jak najwięcej ale tyle ile trzeba.
Właśnie - tyle ile trzeba, z tym się zgadzam. A z drugiej strony trzeba tyle
ile każą w dokumentacji języka HTML, która w omawianym przypadku nakazuje
zastosować nadmiarowość (cały czas nie nabrałem przekonania co do nazywania
tego inaczej), o której tu mowa. A'propos słowa znacznik. Czy omawiany <p>
czy <div> nie jest znacznikiem a poniższy link nie mówi prawdy w stosunku do
HTML'a?
http://pl.wikipedia.org/wiki/Tag_(znacznik)
> Ty nie rozróżniasz znaczników od elementów, więc nic dziwnego że nie wiesz
> co do czego służy.
Nie uda Ci się zaśmiecić dokumentu elementami bez stosowania tagów. Tak więc
moim zdaniem sam się nieco pogubiłeś w nadgorliwym puryźmie.
A po drugie - już tak na marginesie:
Sugeruję abyś skupił się nad meritum sprawy bo czuję, że zaraz zaczniesz
łamać regulamin grup dyskusyjnych. Polecam lekturę:
http://pl.wikipedia.org/wiki/HTML
a w nim o fragment:
"Niektórzy słowa element używają zamiennie ze słowami znacznik lub tag."
... co nie jest pracyzyjne jednakże w naszej dyskusji nie ma to większego
znaczenia. Jednakże przyjmij do wiadomości, że część osób tak właśnie wyraża
się i należy w specyficznych sytuacjach, gdy to rozróżnienie jest istotne,
spytać się o co chodzi zamiast głosić tezy na temat stanu wiedzy rozmówcy.
> A po body też trzeba (w Strict) mistrzu HTMLa.
A tu masz rację. Faktycznie! Byłem całkiem nieświadomy tego, że stosowałem
element blokowy po <body> nie tylko po to aby nadać jakikolwiek wygląd
stronie lecz jest to nawet wymogiem w "strict". Mea culpa.
-
25. Data: 2010-01-12 09:18:29
Temat: Re: HTML 4.01 - dlaczego inputy muszą być w DIVach ?
Od: "Marek" <m...@s...interia.pl>
> Napisz lepiej po co ci ten <br>
Serio pytasz? :-) Bo mam taką wizję aby etykieta była nad polem tekstowym a
<label> robi przy okazji za container bloku. Jeśli przeszkadza w
rozważaniach to traktuj <br> jakby go nie było.
-
26. Data: 2010-01-12 09:27:44
Temat: Re: HTML 4.01 - dlaczego inputy muszą być w DIVach ?
Od: "Marek" <m...@s...interia.pl>
> już zauważył D.S. bererka
A'propos (choć wybiega to poza wątek) - przeczytaj moją odpowiedź udzieloną
Danielowi. Ciekawi mnie czy takie "blokowe" zastosowanie <label> z <br> jest
niewłaściwe?
> poza tym fieldset
tak tak ... ale właśnie nie rozumiem dlaczego po <form> musi być element
blokowy skoro <form> samo w sobie jest blokiem? Mało tego, zobacz przykład:
http://www.w3.org/TR/1999/REC-html401-19991224/inter
act/forms.html#h-17.10
Jest tam <p> przed <fieldset>. Moim zdaniem (wracając do tematu
przewodniego) to śmieć, który nie pełni tam żadnej funkcji.
-
27. Data: 2010-01-12 09:40:15
Temat: Re: HTML 4.01 - dlaczego inputy muszą być w DIVach ?
Od: Daniel Stalica <d...@s...info>
W dniu 2010-01-12 10:18, Marek pisze:
>> Napisz lepiej po co ci ten <br>
>
> Serio pytasz? :-) Bo mam taką wizję aby etykieta była nad polem
> tekstowym a <label> robi przy okazji za container bloku. Jeśli
> przeszkadza w rozważaniach to traktuj <br> jakby go nie było.
Jest niewłaściwe, <br> narzuca złamanie linii, nie powinno się używać
znaczników do formatowania, od tego jest CSS.
--
Systemy kominowe http://twojkomin.pl
-
28. Data: 2010-01-12 16:24:24
Temat: Re: HTML 4.01 - dlaczego inputy muszą być w DIVach ?
Od: Paweł Piskorz <n...@p...nie?>
On 2010-01-12 10:14, Marek wrote:
> Właśnie - tyle ile trzeba, z tym się zgadzam. A z drugiej strony trzeba
> tyle ile każą w dokumentacji języka HTML, która w omawianym przypadku
> nakazuje zastosować nadmiarowość (cały czas nie nabrałem przekonania co
> do nazywania tego inaczej), o której tu mowa.
<form>lorem ipsum</form>
Form tutaj "mówi" tyle o tekście co body o stronie.
Akapitów też nie używasz ze względu na "oszczędność"?
<div>akapit pierwszy<br>akapit drugi<br>akapit trzeci</div>
-
29. Data: 2010-01-12 22:11:55
Temat: Re: HTML 4.01 - dlaczego inputy muszą być w DIVach ?
Od: "Marek" <m...@s...interia.pl>
> Jest niewłaściwe, <br> narzuca złamanie linii, nie powinno się używać
> znaczników do formatowania, od tego jest CSS.
Szczerze mówiąc nie bardzo chwytam dlaczego? Jeśli chcę mieć opis pola
tekstowego nad tym polem to jak złamać linię bez <br>, za pomocą CSS w
obrębie <label>? Miej na uwadze, że <label> powinien oblewać <input> bo jego
funkcją jest m.in. tworzenie layoutu (w praktyce blok o określonych
rozmiarach, czasem z tłem itp). Owszem, można zastosować jeden elemen więcej
aby uzyskać to samo:
<div>
<label>xxx</label>
<input>
</div>
Jednakże wydaje mi się, że <br> chyba nie jest szkodliwy w rozwiązaniu jak
poniżej?
<label>xxx<br>
<input>
</label>
-
30. Data: 2010-01-12 22:22:09
Temat: Re: HTML 4.01 - dlaczego inputy muszą być w DIVach ?
Od: "Marek" <m...@s...interia.pl>
> <form>lorem ipsum</form>
> Form tutaj "mówi" tyle o tekście co body o stronie.
> Akapitów też nie używasz ze względu na "oszczędność"?
> <div>akapit pierwszy<br>akapit drugi<br>akapit trzeci</div>
Tu masz rację o ile intencją jest umieszczenie tekstu w <form>. Dla tego
konkretnego przypadku sytuacja ma się podobnie jak w <body>. Jednakże
formularz kojarzy się z polami, buttonami itp. One zwykle muszą mieć jakieś
elementy wymuszające ich położenie po to aby formularz "jakoś" wyglądał. Mój
post powstał gdy poddałem walidacji HTML formularz, w którym w <form> miałem
kilka bloków powstałych z ostylowania <label>'i. One budowały mi layout
formularza podobnie jak komórki w tabeli. Oczywiście <form> wypełniony
samymi <label>'ami z polami tekstowymi wewnątrz nie przeszedł walidacji. No
więc dopisałem zaraz po <form> jakiegoś <div>a tylko po to aby wszystko było
zgodne ze standardem... ale nie z logiką w tym przypadku. Dopisanie tego
elementu niczego nie zmieniło od strony layoutu ani od strony zachowania się
formularza. Formularz zawierał wyłącznie elementy blokowe. Wtedy powstało
moje pytanie: po co ten DIV?