Aller au contenu

Sujets conseillés

Posté

Bonjour à tous,

J'utilise "display:table-cell;height:100%;" pour forcer les colonnes à occuper toute la hauteur du contenu. Cela marche bien avec IE, Mozilla. En revanche avec Opéra, il apparaît un petit bug provoqué par la présence de "display:table-cell". Si je l'enlève, Opera ne rencontre plus de bug mais c'est Mozilla qui rencontre un bug.

Je cherche un hack qui force Opera à ne pas lire "display:table-cell" comme si cette propriété n'était pas visible, c'est possible de faire cela ?

Merci d'avance.

Posté

Salut

Ya til du php dans ton site ?

Je te donne l'ex (si tu as le php)

Tu mets ca avant le code de ton style (que tu extrait de ta CSS) :

if (!eregi('opera', $HTTP_USER_AGENT)) {
//tu affiches ton style
}

Il détectera le navigateur et si c opera il ne mettra pas le style

:)

Posté

J'ai moi aussi eu un problème avec Opera, que j'ai soumis dans une discussion à propos d'Opera.

J'ai réussi à résoudre mon problème grâce à un lien qui m'avait été donné : Opera, il flotte pas. Il utilise la combinaison du *7 hack et du Tantek hack pour cacher des infos à Opera (et à IE, d'où le Tantek hack pour redonner l'info à IE)

J'espère que cela t'aidera ;)

Posté

Merci Nissone,

Je ne connaissais pas l'astuce pour cacher à Opera. Je comprends mieux pourquoi certains sites utilisaient ce jargon pour tricher...

Malheureusement, je n'ai résolu mon problème avec :

#contenuCentral{width:100%;display:table-cell;height:100%;background-color: #000;margin:0px;padding:0px;}
html*#contenuCentral  {display:table-cell;}/* cette régle est cachée pour Opera*/

mais je me dis qu'il ne faut pas être trop perfectionniste et que le bug nest pas trop disgrâcieux, c'est ce qui compte.

Posté
#contenuCentral{width:100%;display:table-cell;height:100%;background-color: #000;margin:0px;padding:0px;}
html*#contenuCentral  {display:table-cell;}/* cette régle est cachée pour Opera*/

<{POST_SNAPBACK}>

Pour l'instant, ta première ligne indique à tous les navigateurs display:table-cell et ta deuxième ligne indique à tous tes navigateurs sauf Opera display:table-cell :wacko:

- Il faut que, dans la première ligne, tu indiques, en premier, ce que tu veux que tous les navigateurs sauf Opera appliquent.

- Tu places voice-family: "\"}\""; voice-family:inherit; après.

- Puis la valeur que Opera doit appliquer.

Tous les navigateurs sauf IE vont appliquer cette nouvelle régle, tu dois donc faire la deuxième ligne.

- Dans ta deuxième ligne, tu indiques, à nouveau, ce que tu veux que tous les navigateurs affichent.

Si mes explications ne sont pas claires, relis le tutoriel ; c'est très bien expliqué :)

Posté

Alors, j'ai ajouté ceci :

#contenuCentral{width:100%;display:table-cell;voice-family: "\"}\""; voice-family:inherit;display:block;height:100%;background-color: #000;margin:0px;padding:0px;}
html*#contenuCentral  {display:table-cell;}/* cette régle est cachée pour Opera*/

Mais le pb est que sous Mozilla, cela ne marche plus, sous Opera, c'est impeccable. En fait, je ne sais pas trop quoi dire après "inhérit", j'ai mis "display:block" car c'est par défaut...

Bizarre que cela ne marche pas avec Mozilla le hack d'Opera...

Posté

Attention à ne pas mettre derrière le voice-family: "\"}\""; voice-family:inherit; des informations que tu veux qu'IE voit !

Sinon, j'ai eu l'occasion de tester ce hack la semaine dernière et je n'ai pas eu de problème avec Mozilla.

Est-il possible que ton problème vienne d'ailleurs ? Une autre interprétation du table-cell par Mozilla ou autre chose...

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...