Pour résoudre ces problèmes, j'interroge habituellement le DOM avec JavaScript pour connaître la taille de la fenêtre. J'utilise ensuite:
document.getElementById('popup').style.top = window_height - popup_height/2;
document.getElementById('popup').style.left = window_width - popup_width/2;
Le positionnement du popup doit être défini sur 'absolute' dans le CSS. Pour obtenir la hauteur (même pour la largeur) J'utilise:
if (document.body.clientHeight) {
window_height = document.body.clientHeight;
} else {
window_height = window.innerHeight;
}
Si votre div ne dispose pas d'un identifiant, vous pouvez toujours passer la référence d'objet à la fonction JavaScript comme:
<div class='popup' onmouseover='javascript:openPopup(this);'> ... </div>
Et, une pièce voisine de code:
function openPopup(element) {
// Get window's height and width using the code above
element.style.top = window_height - popup_height/2;
element.style.left = window_width - popup_width/2;
}
C'est, au lieu d'interroger les DOM pour obtenir l'objet de l'ID, vous passez directement l'objet à la fonction JavaScript.
Nope qui ne fonctionne pas du tout ... il devrait y avoir des propriétés CSS dans le .ienlarger a: durée de vol stationnaire _______tried la plupart du temps toutes les propriétés, mais pas de chance –
Cela fonctionne quand je l'essaye: .ienlarger une durée { couleur de fond: # 000000; couleur: # FFCC00; affichage: aucun; famille de polices: Arial, Helvetica, sans-serif; taille de police: 13px; police-poids: gras; gauche: 50%; marge gauche: -70px; rembourrage: 10px 10px 13px; position: absolue; text-decoration: aucune; largeur: 150px; } Mais ce n'est pas vertical ... je suppose qu'il serait judicieux d'utiliser un peu de javascript –