» »

CSS stili za določene verzije brskalnikov

CSS stili za določene verzije brskalnikov

boss-tech ::

Določeni moduli v joomli so zelo problematični in jih rešujem tudi tako da v css dodam stile, ki potem delujejo samo za določene
tipe brskalnikov. Ampak imam recimo probleme z IE8 in IE9, ker mi stvari prikazuje različno. Ampak ko dodam stil ki naj bi bil
samo za IE9, ga potegne tudi IE8. Ali ve kdo te točne stile, ki bi delovali samo za določeno verzijo IE, ter ne tudi na ostale?

Trinitron ::

Nekaj takega: http://msdn.microsoft.com/en-us/library...

Edit: Še primer - stil, ki bo viden samo v IE8:
<!--[if IE 8]>
<link rel="stylesheet" type="text/css" href="ie8.css">
<![endif]-->

Zgodovina sprememb…

boss-tech ::

Ja samo to je za HTML in ne direktno v CSS. Imajo ti if stavki možnost tudi if - else? Oz da nekako potem zajameš ostale brskalnike?

kunigunda ::

Preveri raje user agenta iz environmenta. Ce uporabljas to v vec skriptah, lohk to nastavis ze na serverju da ti spreminja alias na
css-je.

boss-tech ::

Imam npr nek menu:

 <ul class="menu<?php echo $params->get('moduleclass_sfx'); ?> maximenuck" style="<?php echo $menubgcolor; ?>">


Zdaj pa bi lahko naredil tukaj IF stavke, al pa v CSS stile ki veljajo samo za določene brskalnike:

 padding : 0 14px 0 0 \0/IE9;


Sedaj pa ne vem kako bi bilo najboljše. If v html ali kar v css

kunigunda ::

Sej pravim jest bi to ze na serverju naredu. Uporabljas Apache ?

Na Apacheju uporabis mod_rewrite

Naredis default fajl s stili, npr stili.css

pol pa une k so specificni v apachiju rewritas

RewriteCond %{HTTP_USER_AGENT} ^Mozilla/3.*
RewriteRule ^stili\.css$ stili.mozilla.css [L]

RewriteCond %{HTTP_USER_AGENT} ^IE/8.*
RewriteRule ^stili\.css$ stili.ie8.css [L]

...

Poglej kak string daje IE8 in IE9 v user agenta

Tko imas vedno v vsakem .css-ju isto ime, npr menu{}
Ti pa v skriptah vedno uporabljas samo class="menu" npr

Zgodovina sprememb…

4kik4 ::

men je najlažje takole, čeprav ja ok vem da ni prav in vse, vendar se najbolj splača. enostavno in hitro, pa vse je lepo v enem .css fajlu ;)

.box {
background: gray; /// tole dela sivo pač navadn stil
background: pink\9; /// samo za ie9
*background: green; /// za ie8 in ie7
_background: blue; /// ammm, nisem preizkusila, sam sj ie6 je itak out
}

boss-tech ::

Jaz sem rešil tako da sem že v php določil verzijo brskalnika in potem določil stil. In tako res zagrabi stil kot določiš. Ker tale zgornji primer včasih ne dela kot bi človek rad.

4kik4 ::

meni je sicer delalo, pa niti nisem vedela, da se da to že s phpjem narest, sem bolj začetnica... mogoče pri naslednji strani :)

HardFu ::

http://html5boilerplate.com/ tole si snemi z neta pa poglej kako se to ureja dandanes.

lp
http://codeable.io

Matek ::

Kar se pravilnih praks tiče, je res najboljša opcija to, kar je svetoval Trinitron - torej imaš najprej splošen CSS, potem pa še specifične za vse problematične verzije IEja. In tu ne gre za to, da bi imel prekopiran cel CSS s spremembami za IE - predvidevam, da si tako mislil, ko si vprašal, če lahko imaš IF-ELSE stavek, da bi vključil še CSS za druge browserje. V IE CSSu imaš samo par propertyjev, ki delajo težave. In če ta IE css naložiš kasneje (nižje v headerju HTML dokumenta), se upošteva zadnje naloženo pravilo za isti element. Primer:

main.css
.enclass {
  background-color: red;
  display: inline;
  height: 20px;
  width: 10px;
}

ie8.css
.enclass {
  background-color: blue;
}

v headerju index.html
<link rel="stylesheet" type="text/css" href="main.css">
<!--[if IE 8]>
<link rel="stylesheet" type="text/css" href="ie8.css">
<![endif]-->

Na tak način bodo v večini browserjev elementi s classom .enclass vse 4 propertyje pobrali iz main.css, v ie8 pa 3 propertyje iz main.css, četrtega pa iz ie8.css.
Bolje ispasti glup nego iz aviona.

Zgodovina sprememb…

  • spremenil: Matek ()


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
!

Vse, kar ste si želeli vprašati o CSS, pa si niste upali. (strani: 1 2 3 423 24 25 26 )

Oddelek: Izdelava spletišč
1298346079 (5216) sunniegoldie
»

[Java] JSP

Oddelek: Programiranje
6661 (498) Spura
»

FF ne prikazuje ozadja.

Oddelek: Izdelava spletišč
6919 (845) OmegaM
»

[CSS] HTML5, CSS3 + IE8

Oddelek: Izdelava spletišč
92781 (2567) nuclear

Več podobnih tem