Autor Zpráva
michal9
Profil *
Prosím Vás, chápe někdo to dole "2010: Prý už to nefunguje...

Odlišení Mozilly od Opery

V některých módech je těžké odlišit Operu a Mozillu (Gecko). Jediné, na co jsem přišel, je velmi nespolehlivý hack pomocí pseudotřídy :lang

http://www.jakpsatweb.cz/weblog/archiv/200304.html#lang

Ale prý pro Operu funguje tohle:

<link rel="stylesheet" type="text/nesmysl" href="pro-operu.css">

Jiné prohlížeče (Explorer, Firefox) takový zápis s neznámým typem ignorují, Opera ho bere. Případně totéž s tagem style:

<style type="text/nesmysl">
/* zápis stylu pro Operu*/
</style>

2010: Prý už to nefunguje. Místo toho by mělo fungovat (ale netestoval jsem) toto:

@opera {/*styl, který funguej jenom pro Operu*/}
@opera 9 {/* styl jenom pro Operu 9 */}



Rád bych to vyzkoušel, ale nevím kam to napsat?

díky
joe
Profil
Odlišit Operu od Firefoxu není potřeba, spíš se nauč kódovat tak, jak se má.
Bubák
Profil
michal9:
Rád bych to vyzkoušel, ale nevím kam to napsat?
Asi nikam, netuším, proč je to na "Jak psát web" zase zpátky.
michal9
Profil *
A jak teda můžu zvlášť editovat css pro Operu?
Používal jsem toto:
<link rel="stylesheet" type="text/opera" href="../styly-opera.css">
, což mi kdysi fungovalo. Teď jsem si nahrál Operu 11, a v ní to vůbec nefunguje.
Miloš
Profil
michal9: „jak teda můžu zvlášť editovat css pro Operu?
joe to snad napsal srozumitelně: „Odlišit Operu od Firefoxu není potřeba, spíš se nauč kódovat tak, jak se má.

Neboli: Máš nějaký konkrétní problém? Popiš a jistě se ho podaří vyřešit tak, že nebude FF/Operu potřeba od sebe odlišovat.
michal9
Profil *
Na mém webu mám v horní části menu, v IE a Firefoxu se zobrazuje ok, ale v Opeře je úplně rozhozená.
Miloš
Profil
V které verzi Opery? Já mám Operu 11.00 a vidím v ní totéž, co ve Firefoxu 3.6.16 a Exploreru 8.
michal9
Profil *
Mám taky 11. Hoď sem screeny těch 3 prohlížečů. díky
Miloš
Profil
Tu jsou:
michal9
Profil *
No, tak to máš přesně tak špatně jako já :-) podívej se pořádně na tu Operu, že to horní menu je o několik pixelů níž, což je špatně! Mimochodem, i logo škodovky je posunutý o kousek doleva!
A proto potřebuju zvlášť editovat css pro Operu.
Miloš
Profil
Ahoa, pravdu díš.

Koukám, že tenhle kus kódu:
<!--[if IE]> -->  
ul{
  position:absolute;
  letter-spacing:1px;
  margin-right:-700px;
  margin-left:0px;
  top:119px;
  clear:left;
 }  
<!-- <![endif]--> 

je velká šílenost – podmíněné komentáře se píšou jen v HTML. CSS nic takového nezná, tam nic takového neexsituje, takže tenhle kus kódu dělá vůbec nevím co.
Jestli chceš CSS jen pro IE, buď ho v podmíněném komentáři přilinkjuj z HTML (<link rel…), nebo v CSS použij „podtržítkový hack“ – stránku máš v quirku, tak bude fungovat.

Mimochodem – když jsem stránku přepnul do standardu přidáním příslušného !DOCTYPE,
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
tak se vše zobrazilo tak, jak má.
joe
Profil
Problém není v prohlížeči, ale v kódu, konkrétně v tomto:
<br><br><br><br><br><br><br><br>


A když už jsme u toho br, tak jsem si nevšimnul ani jednoho správného použití této značky.
michal9
Profil *
Miloš:
je velká šílenost – podmíněné komentáře se píšou jen v HTML. CSS nic takového nezná, tam nic takového neexsituje, takže tenhle kus kódu dělá vůbec nevím co.
Funguje to, jinak bych to tam neměl!
Miloš
Profil
HTML komentáře v CSS nefungují a fungovat nemohou.
Jo a ty <br><br><br><br><br><br><br><br> jsem taky vyhodil, neboli:
Odstranit přebytečné BR, vyhodit nesmyslný podmíněný komentář z CSS a přepnout vykreslovací režim do standardu.
michal9
Profil *
Když udělám to, co mi radíš, tak se to v IE akorát rozhodí! Radši na to kašlu a nechám to tak, jak to je. Ta Opera mi za to nestojí. Hlavní je, že ve Firefoxu a IE se to zobrazuje ok.
margin
Profil *
Kašli na to, hlavně, že v Google Chrome je to ještě horší, než v Opeře. Když už kašleš na dobré rady, úplně nejlíp uděláš, když se na kódování vykašleš úplně.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0