Moim zadaniem jest wykonanie dokumentu HTML z CSSem bezb��dnie waliduj�cym
siďż˝. Mam problem ze stylem:
object:focus {
-moz-outline-style: none;
}
Otrzymuj� b��d - styl takowy nie istnieje. Jedna�e jest on potrzebny aby
omin�� przypad�o�� Mozilli rysuj�c� ramk� wok� Flashy. Czy jest jaka�
metoda ukrycia tego stylu przed walidatorem lecz w taki spos�b aby Mozilla
go widzia�a mimo to?
Zr�b osobny plik CSS �adowany tylko dla firefox.
A tak w og�le do walidator nie jest wyroczni�, no ale jak musisz...
--
Wk�ady kominowe: http://twojkomin.pl
A w jaki spos�b mo�na to zrobi� z zachowaniem postulatu niewidoczno�ci dla
walidatora W3C ?
> A tak w og�le do walidator nie jest wyroczni�, no ale jak musisz...
Tak, wiem. Klient natomiast nie jest techniczny a ktoďż˝ naopowiadaďż˝ mu teorii
wi�c musz� si� tego trzyma�. Zdaj� sobie spraw�, ze b��dy ska�dni s� niejako
integraln� cz�ci� standardu CSS.
Mam na my�li: bez kodu JS je�li to mo�liwe.
Np. w PHP sprawdza� USER AGENT, google powie ci wi�cej...
Jest jakiś szczególny powód dla którego przejmujesz się Ff starszym niż
2, czy po prostu jesteś masochistą? ;]
outline:none;
Chodzi mi o stronďż˝ browsera. Generowanie kodu po stronie serwera to nie to
co chcia�bym zrobi�. By� mo�e jest jaka� tajemna sk�adnia CSS umo�liwiajca
odblokowanie stylu na potrzeby jakiegoďż˝ browsera i ukrycie go dla innych?
Hmmm.. wszystko co chcę osiągnąć to ukrycie ramki wokół Flashy w FF i bycie
w zgodzie z walidatorem. Tak mi niedawno doradzono więc być może na sadystę
trafiłem :)
> Marek pisze:
>>> Zr�b osobny plik CSS �adowany tylko dla firefox.
>> A w jaki spos�b mo�na to zrobi� z zachowaniem postulatu niewidoczno�ci
>> dla walidatora W3C ?
>>
>
> Np. w PHP sprawdza� USER AGENT, google powie ci wi�cej...
Bezsens. Walidator ma ostrzega� przed b��dami. Ukrycie b��du przed
walidatorem nie zmienia faktu, �e b��d istnieje.
To, co walidator pokazuje jest informacjďż˝ dla autora. Zamiast bawiďż˝ siďż˝ w
wykrywanie user-agent r�wnie dobrze mo�esz usi��� i g�o�no powtarza�
"lalalalalala b��d�w nie ma lalalalala".
--
http://pornel.net
this.author = new Geek("porneL");
Ale� oczywi�cie, masz racj�... tylko, �e... heh szukamy w�a�nie sposobu
na ukrycie kawa�ka CSS przed walidatorem, mo�e poczytaj ze zrozumieniem
o co chodzi? Powy�szy spos�b (ten m�j) jest tak samo g�upi jak
postawiony problem, my to wiemy. Daj pomys� jak to obej��, a nie
wyja�niaj rzeczy oczywistych...
> Ale� oczywi�cie, masz racj�... tylko, �e... heh szukamy w�a�nie sposobu
> na ukrycie kawa�ka CSS przed walidatorem, mo�e poczytaj ze zrozumieniem
> o co chodzi? Powy�szy spos�b (ten m�j) jest tak samo g�upi jak
> postawiony problem, my to wiemy. Daj pomys� jak to obej��, a nie
> wyja�niaj rzeczy oczywistych...
Ale� ja dok�adnie nabijam si� z tego, �e szukacie sposobu na ukrycie CSS
przed walidatorem.
no niech b�dzie :)
Ehh je�li tylko o to chodzi... bierzez IP(iki) validatora :) a pozniej w
kodzie kawa�ek:
if($ip!=wiadomo_co) { echo "pseudo-zgodny-hack" }
i po problemie :) Kiedy� musia�em tak robi� scroll="no" w jakiej�
przegl�darce nie dzia�a�o CSSami dla body.
+ : nie anga�ujesz JS do pracy ;)
+ : przesy�asz mniej danych przy ka�dym otwarciu
- : dodatkowy ifik w kodzie, wp�ywaj�cy na czas jego wykonania
Czyli koszty transferu mniejsze ;) czas wykonania o grosz wi�kszy.
Pozdr,p.
Czyli proponujesz nauczy� si� �y� z tym, �e albo mamy b��d w CSS albo
godzimy si� na niew�a�ciwe zachowanie si� strony WWW z punktu widzenia
klienta?
W mi�dzyczasie Pawe� zaproponowa� inny atrybut stylu, kt�ry robi to co
chcia�em osi�gn�� (cho� jeszcze nie zweryfikowa�em) i jest zgodny z CSS. Tak
wi�c dalsza dyskusja by� mo�e ma charakter jedynie pogl�dowy.
>> Ale� ja dok�adnie nabijam si� z tego, �e szukacie sposobu na ukrycie
>> CSS przed walidatorem.
>
> Czyli proponujesz nauczy� si� �y� z tym, �e albo mamy b��d w CSS albo
> godzimy si� na niew�a�ciwe zachowanie si� strony WWW z punktu widzenia
> klienta?
Ukrycie b��dnego kodu *tylko przed walidatorem* nic nie zmienia.
Wszystkie przegl�darki i tak dostan� kod z b��dem.
To tak jakby� napisa� post na usenet z b��dami ortograficznymi, ale przed
wys�aniem przepu�ci� go przez komputerowy sprawdzacz pisowni i przy ka�dym
wskazanym b��dzie wybiera� opcj� "dodaj do s�ownika". Wtedy sprawdzacz
pisowni powie ci, �e post jest bezb��dny! Super!
Oszukuj�c walidator oszukujesz tylko swoje narz�dzie. Kod zadzia�a w
przegl�darkach (lub nie) niezale�nie od tego, do czego zmusisz walidatora.
W przypadku CSS wystarczy zrozumie� regu�y interpretacji b��d�w opisane w
specyfikacji:
http://www.w3.org/TR/CSS21/syndata.html#parsing-errors
Z kt�rych wynika, �e nieznane w�a�ciwo�ci s� po prostu ignorowane.
Zmienia to, �e klient b�dzie zadowolony ze spe�nionego postulatu poprawnej
walidacji CSS. A do tego FF b�dzie te� zadowolony bo wykona dyspozycj� w tym
"niepoprawnym" CSS i nie b�dzie rysowa� ramek wok� Flasha.
> Wszystkie przegl�darki i tak dostan� kod z b��dem.
To ma�oistotne jest. Wa�ne, �e zareaguj� poprawnie.
> To tak jakby� napisa� post na usenet z b��dami ortograficznymi, ale przed
> wys�aniem przepu�ci� go przez komputerowy sprawdzacz pisowni i przy ka�dym
> wskazanym b��dzie wybiera� opcj� "dodaj do s�ownika". Wtedy sprawdzacz
> pisowni powie ci, �e post jest bezb��dny! Super!
Troszk� inaczej bym to uj��. Jest �le, �e s�owo Klient Word 2007 pisze z
du�ej litery a podkre�la je gdy jest pisane z ma�ej. Jednak�e dokument pisz�
na komputerze cudzym i nie chc� aby Word podkre�la� mi to s�owo, kt�re wiem,
�e dobrze pisz�. No i szukam obej�cia.
> Oszukuj�c walidator oszukujesz tylko swoje narz�dzie. Kod zadzia�a w
> przegl�darkach (lub nie) niezale�nie od tego, do czego zmusisz walidatora.
Kod zadzia�a na FF i zniesie niekorzystny efekt - sprawdza�em. Dla IE kod
nie ma znaczenia.
> W przypadku CSS wystarczy zrozumie� regu�y interpretacji b��d�w opisane w
> specyfikacji:
>
> http://www.w3.org/TR/CSS21/syndata.html#parsing-errors
> Z kt�rych wynika, �e nieznane w�a�ciwo�ci s� po prostu ignorowane.
Klient widzi ERROR na czerwono po przepuszczeniu przez walidatora. Wszystko
co us�ysza�em to "ma go nie by�". Nie trafia argumentacja, �e zostanie
zignorowany.
>> Ukrycie błędnego kodu *tylko przed walidatorem* nic nie zmienia.
>
> Zmienia to, że klient będzie zadowolony ze spełnionego postulatu
> poprawnej walidacji CSS.
Problemem może być to że nie istnieje coś takiego jak walidator css
którym może posługiwać się laik (w tym przypadku klient). Jeśli klient
nie potrafi czytać wyników walidatora to po prostu nie powinien tego
robić. Walidator _NIE_JEST_ narzędziem dla klientów, tylko dla
webmasterów. Szczególnie walidator CSS.
A w razie czego zawsze możesz klientowi powiedzieć że piszesz w CSS3.2 i
jak ustawi taką opcję w walidatorze to nie będzie czerwonego :)
Poza tym ciesz się że się klient do Cythii nie dorwał, dopiero miałbyś
zabawę!
Przy okazji - następnym razem sprawę walidacji przedyskutuj z klientem
_przed_ podjęciem się wykonania zlecenia, a nie po.
ethanak
--
mailto=window.atob('ZXRoYW5ha0Bwb2xpcC5jb20=');
http://milena.polip.com/ - nie czekam na Ivo!
Póki co temat udało mi się obejść gdyż ktoś zaproponował mi styl "bardziej
współczesny" nież ten, który powodował problem. Tak czy owak sytuacja była
dla mnie trochę frustrująca. Im mniej dyskusji z tym klientem tym lepiej.
Muszę trzymać się nieszczęsnej w/w wytycznej.
> Przy okazji - następnym razem sprawę walidacji przedyskutuj z klientem
> _przed_ podjęciem się wykonania zlecenia, a nie po.
Było przed... to był główny postulat. Było tam znacznie więcej absurdalnych,
które sprostowałem lecz ten jeden pozostał. Założyłem błędnie, że da się to
zrobić. Problem tylko stanowiły ramki wokół Flashy pod FF. Tego nie
przewidziałem.
No nie wiem, czy żądanie poprawnego kodu to absurdalne wymaganie. Albo
się umie napisać stronę/aplikację, albo nie. Ot co.
tm
[...]
> No nie wiem, czy żądanie poprawnego kodu to absurdalne wymaganie. Albo
> się umie napisać stronę/aplikację, albo nie. Ot co.
Poprawny != któryśtam walidator go rozumie.
Ok, więc może sprawdźmy jak sobie radzisz z pisaniem aplikacji. Poniżej
cytuję wybrane założenia spośród znacznie dłuższej listy. Mogę się założyć,
że jesteś baaaardzo kiepski w pisaniu aplikacji zgodnej z poniższymi
założeniami i nie ma sensu abym cytował ich więcej. Intryguje mnie w
szczególności jak poradzisz sobie z językiem XHTML 4.1 a także dostosowaniem
serwisu do każdej rozdzielczości monitora i pod każdą przeglądarkę.
1)strona ma być wykonana w technologii xml 1.0 stict (tj. Xhtml 4.1, minimum
PHP5, minimum MySQL 5), z użyciem formatowania za pomocą css, spełniającej
standardy w3org.
2)składniki strony muszą być dostosowane tak aby funkcjonowały w systemie
operacyjnym Linux, Windows, OS MAC, oraz muszą być dostosowane do każdej
rozdzielczości monitora,
> 1)strona ma być wykonana w technologii xml 1.0 stict (tj. Xhtml 4.1,
^^^^^^^^^
> minimum PHP5, minimum MySQL 5), z użyciem formatowania za pomocą css,
> spełniającej standardy w3org.
ethanak, ja, Ty, ani nikt na całym świecie nie sprosta tym wymaganiom —
bo nikt nie jest w stanie stworzyć strony w języku który nie
istnieje.
MSANC
--
Niżej podpisany, zamieszkały w http://minio.xt.pl ,
Mirosław Zalewski
Otóż to - w opinii Tomka cieńkie Bolki z nas :-) Nie potrafimy napisać
aplikacji w nieistniejącym języku.
Z XHTML4.1 faktycznie sobie nie poradzę :) Aha, i nie pisz o wiedzy
kogoś kogo nie znasz.
Zwróć też uwagę, że pisałem o *żądaniu poprawnego kodu*, a nie
zatwierdzeniu go przez walidator - taką luźną myśl dorzuciłem. Klient
zażądał poprawnego kodu - przedstaw mu dokumentację, potwierdzającą, że
jest on poprawny. Źródło wskazał już porneL. Dorzuć jeszcze link do
dokumentacji od FF. Co więcej potrzeba?
> 1)strona ma być wykonana w technologii xml 1.0 stict (tj. Xhtml 4.1,
> minimum PHP5, minimum MySQL 5), z użyciem formatowania za pomocą css,
> spełniającej standardy w3org.
Po trzykroć imponujące! ;)
> 2)składniki strony muszą być dostosowane tak aby funkcjonowały w
> systemie operacyjnym Linux, Windows, OS MAC, oraz muszą być dostosowane
> do każdej rozdzielczości monitora,
A co powiesz jeszcze jak dorzucę ekrany komórek oraz Lynxa? :)
tm
> No nie wiem, czy ��danie poprawnego kodu to absurdalne wymaganie. Albo
> siďż˝ umie napisaďż˝ stronďż˝/aplikacjďż˝, albo nie. Ot co.
Z poprawno�ci� kodu, to jest tak:
- poziom pierwszy: niepoprawny, bo nie wiesz jak
- poziom drugi: poprawny, bo wiesz jak
- poziom trzeci: niepoprawny, bo wiesz lepiej
W paru mIEjscach standardy rozmijaj� si� z rzeczywisto�ci� i masz do
wyboru teoretycznie poprawny kod, kt�ry nie dzia�a, albo teoretycznie
niepoprawny, kt�ry w praktyce dzia�a.
Nie m�wi�, �eby olewa� standardy czy walidacj�, to w 99% przypadk�w s�
dobre rzeczy, ale czasem hack zrobiony z g�ow� jest mniej szkodliwy od
bezmy�lnego trzymania si� standard�w.
> 2)sk�adniki strony musz� by� dostosowane tak aby funkcjonowa�y w
> systemie operacyjnym Linux, Windows, OS MAC
To ma tyle sensu co system DOORS PX 95. Jak podejmujesz si� zgodno�ci z
jakim� systemem, to mo�e chocia� zobacz jak si� nazywa?
Ok, mo�na by�o �le zrozumie� moj� wypowied�. Mea culpa.
Ale chodzi�o mi o poprawno�� kodu, a nie o walidatora. Niestety, 99%
klient�w nawet nie wie co to jest i, �e mo�e by� co� takiego jak �le
napisana strona. Wy�wietla si�, to p�aci. Non stop widz� strony, �e a�
dziw bierze, �e si� to w og�le wy�wietla...
Id�c jednak na pewne ust�pstwa uwa�am, �e w 99% przypadk�w mo�na �y� bez
-moz-co�-tam i innych hack�w.
tm
Tomku, nawiązałem do Twoich słów:
"No nie wiem, czy żądanie poprawnego kodu to absurdalne wymaganie. Albo
się umie napisać stronę/aplikację, albo nie."
Sugerujesz, że osoba, której nie znasz (czyli ja) nie posiada wiedzy
koniecznej do tworzenia aplikacji nie pytając nawet o detale tych założeń.
Mógłbyś to równie dobrze ująć tak: nie ma bzdurnych założeń, są tylko
niedouczeni programiści. Nie dziw się, ze potraktowałem Twoje słowa z lekkim
sarkazmem. :)
Z ciekawo�ci spytam: czy XHTML 4.1 b�d�cy sk�adnikiem technologii XML strict
nie ruszy� Ciebie skoro tylko do punktu 2 odnios�e� si�? :-)
No to sobie daliśmy "po razie" ;)
tm
A teraz bardziej rozrywkowo. Te założenia były sformułowane w pewnym
przetargu publicznym. Dosłownie każde zdanie dotyczące technologii musiałem
weryfikować aby móc wywiązać się z wyznaczonych zadań :Przytoczyłem tylko
fragment -)
Ten cudak juďż˝ zostaďż˝ zjechany przez innych - nie ma sensu siďż˝ powtarzaďż˝.
Jeszcze chcia�bym wr�ci� do tego zdania. Nie bardzo zrozumia�em intencje
Twoje. Czy nazwa�em co� niew�a�ciwie? Jedyne nazwy technologii jakie u�y�em
w swoich wypowiedziach to CSS i HTML. Pomijam cytaty z za�o�e�
sformu�owanych przez osoby trzecie bo to nie moje s�owa. Chodzi Ci o to, �e
nie okre�li�em wersji? Je�li tak, to chodzi�o mi o CSS 2.1 i HTML 4.1
strict.
>> Jak podejmujesz si� zgodno�ci z jakim� systemem, to mo�e chocia�
>> zobacz jak siďż˝ nazywa?
>
> Jeszcze chcia�bym wr�ci� do tego zdania. Nie bardzo zrozumia�em intencje
> Twoje. Czy nazwa�em co� niew�a�ciwie?
Napisa�e� (albo zacytowa�e�) "OS MAC", co zapewne mia�o znaczy� "Mac OS
X". Ktoďż˝, kto przynajmniej czytaďż˝ o tym systemie powinien znaďż˝ pisowniďż˝
nazwy. Do tego X z nazwy lepiej nie pomija�, bo mi�dzy Mac OS, a Mac OS X
jest r�nica jak mi�dzy Windows ME a Windows 7.
Ca�a reszta wypowiedzi te� by�a pomylona. Nie ma XML Strict, a PHP i MySQL
z maj� niewiele wsp�lnego z XML i standardami W3C w og�le.
Wszystko si� zgadza opr�cz tego, �e to moje s�owa. Troche kontekst zgubi�e�.
By�a to odpowied� udzielona Tomkowi, kt�ry napisa� (w mojej interpretacji),
�e nie ma bzdurnych za�o�e� lecz s� niedouczeni programi�ci. Wtedy
zacytowa�em mu za�o�enia pewnej firmy organizuj�cej przetarg na serwis WWW.
Tak wi�c s�owa poczytania sobie na temat standard�w nie powinny by�
adresowane do mnie lecz do organizatora przetargu.
http://tocheckserver.pl/2009/12/07/detekcja-przegladarki-w-php-i-javascript/
--
Krzysztof Warunek
>> Moim zadaniem jest wykonanie dokumentu HTML z CSSem bezb��dnie
>> waliduj�cym si�. Mam problem ze stylem:
>> object:focus {
>> -moz-outline-style: none;
>> }
>> Otrzymuj� b��d - styl takowy nie istnieje. Jedna�e jest on potrzebny
>> aby omin�� przypad�o�� Mozilli rysuj�c� ramk� wok� Flashy. Czy jest
>> jaka� metoda ukrycia tego stylu przed walidatorem lecz w taki spos�b
>> aby Mozilla go widzia�a mimo to?
> sprawdzanie w php klienta
php klienta?
> http://tocheckserver.pl/2009/12/07/detekcja-przegladarki-w-php-i-javascript/
O fuj, milionpierwsze sprawdzanie user-agent i to jeszcze wyj�tkowo
mizerne, bo kategoryzuje przegl�darki wg ich marketingowych nazw, a nie
sinik�w.
Takie syfy s� du�o bardziej szkodliwe, ni� b��dna linijka CSS.
sprawdzanie w php klienta, jego przegl�darki po u-a
dziwnie brzmi, ale...
> O fuj, milionpierwsze sprawdzanie user-agent i to jeszcze wyj�tkowo
> mizerne, bo kategoryzuje przegl�darki wg ich marketingowych nazw, a nie
> sinik�w.
mia�o by� proste i jest. aczkolwiek nic nie stoi na przeszkodzie,
aby zmieni� tablic� na nazwy silnik�w (pomijam ju� tutaj wersje).
jak potrzeba to si� u�ywa browsercap.
> Takie syfy s� du�o bardziej szkodliwe, ni� b��dna linijka CSS.
W�tkotw�rcy nie chodzi�o o szkodliwo�� b��dnej linijki, a o jej ukrycie.