Maison >interface Web >tutoriel HTML >Comment résoudre le problème de div couvert par objet ?

Comment résoudre le problème de div couvert par objet ?

零下一度
零下一度original
2017-06-29 09:47:532575parcourir

J'ai récemment travaillé sur un projet Web. Comme il existe un plug-in , la boîte de dialogue contextuelle
sera couverte par celui-ci. apparaît, l'objet et place une boîte de dialogue
C'est la solution à ce problème. J'ai finalement résolu ce problème et je partagerai mes idées avec vous pour votre référence.


(1) Tout d'abord, permettez-moi de vous présenter la balise object : W3school a expliqué la définition et l'utilisation de

définit un objet incorporé. Veuillez utiliser cet élément pour ajouter du multimédia à vos pages XHTML. Cet élément vous permet de spécifier des données et des paramètres pour les objets insérés dans un document HTML, ainsi que du code pouvant être utilisé pour afficher et manipuler les données. La balise

est utilisée pour contenir des objets tels que des images, de l'audio, de la vidéo, des applets Java, ActiveX, PDF et Flash.

object était à l'origine destiné à remplacer les éléments img et applet. Cependant, cela ne s'est pas produit en raison de bugs et du manque de prise en charge du navigateur.

La prise en charge des objets par le navigateur dépend du type d'objet. Malheureusement, les principaux navigateurs utilisent tous un code différent pour charger les mêmes types d'objets.

Heureusement, l'objet apporte une solution. Si l'élément objet n'est pas affiché, le code entre et De cette façon, nous pouvons imbriquer plusieurs éléments d'objet (un pour chaque navigateur).

En général, la balise object est utilisée pour embarquer du multimédia.

(2) Présentez brièvement les attributs importants de plusieurs balises d'objet :

classid - associé à une application, l'identifiant unique de l'application qui exécute le contenu intégré dans le système Windows ( Cet identifiant ne peut pas être modifié, sinon le programme provoquera une exception),

Par exemple, clsid:D27CDB6E-AE6D-11cf-96B8-444553540000 -- Flash

data -- spécifie l'URL de la ressource utilisée par l'objet.

(3) Problème avec la couverture des balises d'objet sur IE

Après avoir interrogé les ressources associées, nous avons constaté que est un élément fenêtré dans IE, c'est-à-dire un élément de fenêtre. sera toujours rendu au-dessus des éléments non-fenêtres, et iframe est au-dessus de l'objet par défaut, la seule solution est d'utiliser iframe comme intermédiaire, c'est-à-dire d'utiliser iframe pour couvrir l'objet, puis d'utiliser div pour couvrir iframe.

<div class="dropdown"><p>我是对话框</p><iframe id="iframe" src="about:blank" frameborder="0" marginheight="0" marginwidth="0" style="position:absolute;visibility:inherit; top:0px;left:0px;width:100%; height:100%;z-index:-1; filter:alpha(opacity=0);"></iframe> </div><div style="width: 950px;height: 400px;position: relative;z-index: 9;"><object id="CmCaptureOcx" style="width: 100%; height:100%;"classid="clsid:3CA842C5-9B56-4329-A7CA-35CA77C7128D">    </object></div>

Remarque :

1. Le div doit avoir un z-index spécifique et être supérieur au z- index de l'iframe. Il ne peut pas être automatique ou vide

2. Le z-index de l'iframe doit être négatif (il a toujours été défini sur une valeur positive auparavant. Bien qu'il soit est plus petit que le z-index du div, il ne peut pas être couvert par le div), sinon le div ne peut pas couvrir l'iframe

3. iframe est 0, et la largeur et la hauteur de l'iframe sont égales à la largeur et à la hauteur du div

4. Faites attention à définir la transparence de l'iframe sur 0.

5. S'il y a plusieurs boîtes pop-up sur la page, vous pouvez utiliser js pour ajouter dynamiquement l'iframe.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn