ultraxa Posted October 14, 2011 Share Posted October 14, 2011 bonjour pourquoi sur les different navigateur (IE,firefox,chrome,safari,opera) y'a t'il autant de probleme d'ingretion css un exemple un lien href avec un titre et dans le css ,un background j'aurais beau mettre un text-align:center et ben sur firefox c'est bon, sur ie decalé vers le bas ...ect alors ne me dite pas , ie c'est de la merde ... c'est juste qu'il faut que ca fonctionne faut il forcer tel ou tel truc ? Link to comment Share on other sites More sharing options...
BigCom Posted October 16, 2011 Share Posted October 16, 2011 plusieur solutions : 1) tu fait un 'browser sniffer' (acceptable pour .css, mais a banir pour javascript), et tu mudifies tes classes suivant cela un exemple etant : var css_browser_selector = function() { var ua=navigator.userAgent.toLowerCase(), is=function(t){return ua.indexOf(t) != -1;}, h=document.getElementsByTagName('html')[0], b=(!(/opera|webtv/i.test(ua))&&/msie (\d)/.test(ua))?('ie ie'+RegExp.$1):is('firefox/2')?'gecko ff2':is('firefox/3')?'gecko ff3':is('gecko/')?'gecko':is('opera/9')?'opera opera9':/opera (\d)/.test(ua)?'opera opera'+RegExp.$1:is('konqueror')?'konqueror':is('chrome')?'chrome webkit safari':is('applewebkit/')?'webkit safari':is('mozilla/')?'gecko':'', os=(is('x11')||is('linux'))?' linux':is('mac')?' mac':is('win')?' win':''; var c=b+os+' js'; h.className =''; h.className += h.className?' '+c:c; var getbrower = b.split(' '); brower = getbrower[0]; fullBrower = getbrower[0] + ' ' + getbrower[1]; }(); et dans la .css tu vas avoir : .my-class {height:25px;} .ie6 .my-class {height:23px;} .ff .my-class {height:33px;} 2) Tu effaces simplement ton actuel .css sheet, car si tu as ce genre de problemes il signifie simplement la .css n'est pas conformes. Et tu la refait en suivant les recommandations (www.w3schools.com/). Mon script est en fait necessaire que pour 1 element, les listes (<ul <li ) si comme moi tu desires avoir en background une bullet qui n'est pas standard et cela sans avoir un element a l'interieur du <li; comme cela n'est pas standart a 100% tu as une difference ente IE et les autres. Pour tout autre classe, les differents browsers sont egaux. Si maintenant tu ne te sent pas capable de refaire la .css sheet, envoie moi un PM avec tes specifications et je transmettrai un devis (le script est gatuit, mais soi certain que cela est la MAUVAISE maniere de mainenir ton site, disons que c'est une mesure provisoire, comme donner de l'aspirine pour une jambe cassee). Eric Link to comment Share on other sites More sharing options...
ultraxa Posted October 16, 2011 Author Share Posted October 16, 2011 qu'est ce qui est provisoire ?ta solution ou le faite que tu fasse la solution? Link to comment Share on other sites More sharing options...
BigCom Posted October 16, 2011 Share Posted October 16, 2011 la closure var css_browser_selector = function() {....} est (et ne doit etre) qu'une mesure provisoire. Sniffer le browser est contre toutes les regles, est dangereux car incertain, denottes simplement que les classes css ont ete mal faites. Donc cette closure est une solution provisoire, tu dois refaire ta css, ou la confier a un pro qui connaisse son boulot (moi ou un autre, ce n'est le probleme). Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now