2008-10-16 6 views
2

J'ai un formulaire en utilisant plusieurs <cfinput type="datefield" ...>. Ils sont positionnés de telle sorte que le calendrier CSS pop-up devrait apparaître sur le terrain pour les autres. Cependant, les champs de texte pour les autres dates se retrouvent devant le calendrier.CSS de traversée avec cfinput type = "datefield"

Ceci est seulement un problème d'IE car Firefox et Safari fonctionnent très bien.

Existe-t-il un simple hack CSS ou quelque chose d'autre que je puisse faire pour que le calendrier fonctionne comme il se doit? Réorganiser le formulaire n'est pas très utile.

+0

avez-vous une page de test? C'est un peu difficile à déboguer sans un échantillon. – scunliffe

+0

Non. Je fais presque exclusivement des applications intranet. – ale

+0

parlez-vous des champs de texte de saisie simples ou sélectionnez? Parce que l'élément select a un comportement spécial dans IE. – alexmeia

Répondre

0

Ma première tendance est d'essayer d'ajouter un style pour les champs de texte avec un z-index négatif. Alternativement, vous pourriez essayer d'appliquer un z-index positif à la popup. Le premier serait probablement plus facile, étant donné que les popups sont écrits dynamiquement - CF transmet tous les attributs non reconnus ou non utilisés au navigateur, vous pouvez donc simplement ajouter un style. Quelque chose comme:

<cfinput type="datefiled" name="bob" value="" style="z-index: -1;"> 

Non testé, YYMV.

+1

Non. Ne fonctionne pas – ale

+3

L'index Z n'a de sens que sur les éléments positionnés, seul, il n'a aucun effet. – Tomalak

+0

@Tomalak, j'étais assez certain que les popups, sinon les champs de texte, étaient positionnés. @Al Everett, désolé, cela n'a pas fonctionné. J'aurais dû dire que les popups devraient avoir un z-index positif. Je ne sais pas si tu as essayé ça. –

4

Eh bien, vous devez résumer votre datefield wirhin un div à la fois position: relative et la valeur Z-index, comme dans:

<div style="position:relative; z-index:3"> 
<cfinput type="dateField" name="info_dateDebutPub" value="#dateformat(info_dateDebutPub,'dd/mm/yy')#" mask="dd/mm/yy"> 
</div> 

Définir Z-index dans le cfinput ne fonctionnera pas .

+0

a bien fonctionné. Merci. –

0

Essayez dans votre CSS,

pour DIV avec des champs de cfinput

position:relative;z-index:0 

pour le calendrier

position:absolute;z-index:1