IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mise en page CSS Discussion :

Sortir une div du flux


Sujet :

CSS

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mai 2003
    Messages
    40
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2003
    Messages : 40
    Par défaut Sortir une div du flux
    Bonjour,

    je ne sais pas si j'utilise le bon terme, mais j'essaie d'afficher une fenêtre modale en full CSS sur toute la largeur d'une page, mais là elle ne prend que la largeur de la colonne depuis laquelle elle est appelée :

    Nom : Capture d’écran 2022-07-28 à 18.30.34.png
Affichages : 296
Taille : 923,2 Ko

    le
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <a href="#modalContent">Voir la fenêtre modale</a>
    <div>    
            <div class="modalLayer" id="modalContent">
                <div class="popup_block">
                    <a href="#noWhere"><img alt="Fermer" title="Fermer la fenêtre" class="btn_close" src="close_pop.png"></a>
                    <img style="float: right;margin: 0 0 0 20px" alt="Lil bomb dude" src="150.png">
                    <h2>titre</h2>
     
                    <p>texte</p>
     
                </div>
            </div>
        </div>

    le
    Code CSS : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    #modalCheck{
                display: none;
            }
    .modalLayer{
                display: none;
                position: fixed;
                z-index: 9999999999999;
                top: 0;
                bottom: 0;
                left: 0;
                right: 0;
                background-color: rgba(0, 0, 0, 0.5);
            }
    #modalCheck:checked + .modalLayer, #modalContent:target{
                display: block;
            }
    .popup_block{
                background: #fff;
                padding: 5px;
                border: 5px solid #ddd;
                position: relative;
                margin: 10% auto;
                width: 60%;
                box-shadow: 0px 0px 10px #000;
                border-radius: 10px;
            }
    img.btn_close {
                float: right;
                margin: -55px -55px 0 0;
                cursor: pointer;
            }
    .button{
                cursor: pointer;
                color: blue;
                text-decoration: underline;
            }

    Merci à vous pour vos pistes

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 209
    Par défaut
    Bonjour,
    il nous manque la définition, CSS de l'élément contenant, pour vérifier que celui-ci n'est pas un « bloc contenant à positionnement fixe », comme par exemple si celui-ci possède une propriété CSS transform.

    Ressources :

  3. #3
    Membre averti
    Inscrit en
    Mai 2003
    Messages
    40
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2003
    Messages : 40
    Par défaut
    Bonjour,

    je pense que l'élément principal sur lequel se base la fenêtre est un UL (et le LI qui va avec), qui a effectivement une propriété transform. Je remets tout le code ici :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    <section class="choices">
    <ul class="layer_choices simple active">
    	<li class="layer-choices-title">
    		<span>Cadre <a href="#" class="close"><span>Fermer</span></a></span>
     
    	</li>
    	<li class="choices-list"><ul data-layer-id="1">
     
    	<li class="choice"> 
    	<button type="button" class="choice-item">
     
    			<i class="mkl-pc-thumbnail"><span><img src="150.png" alt=""></span></i>
     
    			<span class="text choice-name">Choix 1</span>
    			<span class="description">description du choix 1</span>
    		</button>
    	</li><li class="choice active"> 
    	<button type="button" class="choice-item">
     
    			<i class="mkl-pc-thumbnail"><span><img src="150.png" alt=""></span></i>
     
    			<span class="text choice-name">Choix 2</span>
    			<span class="description"><div>
    <a href="#modalContent">Voir la fenêtre modale</a>
    <div>		
    		<div class="modalLayer" id="modalContent">
    			<div class="popup_block">
    				<a href="#noWhere"><img alt="Fermer" title="Fermer la fenêtre" class="btn_close" src="close_pop.png"></a>
    				<img style="float: right;margin: 0 0 0 20px" alt="" src="150.png">
    				<h2>Popup #1</h2>
     
    				<p>Aliquip transverbero loquor esse ille vulputate exerci veniam fatua eros similis illum valde. Praesent, venio conventio rusticus antehabeo lenis. Melior pertineo feugait, praesent hos rusticus et haero facilisis abluo. </p>
    				<p>Veniam tincidunt augue abluo vero, augue nisl melior quidem secundum nobis singularis eum eum.</p>
     
    			</div>
    		</div>
    	</div>
    </div></span>
    		</button>
    	</li></ul></li>
    </ul>
    </section>


    Code css : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    .mkl_pc .mkl_pc_container .mkl_pc_toolbar section.choices .layer_choices.active {
    transform: translateX(0);
    visibility: visible;
    box-shadow: -12px 0 40px -10px rgba(0, 0, 0, 0.15);
    }
     
    .mkl_pc .mkl_pc_container .mkl_pc_toolbar section.choices .layer_choices {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 60px;
    right: 0;
    transition: all 0.3s cubic-bezier(0.02, 0.5, 0.14, 1.01);
    background: var(--mkl_pc_color-dark);
    }
     
    .mkl_pc .mkl_pc_container .mkl_pc_toolbar section.choices > ul li {
    display: block;
    margin: 0;
    padding: 0;
    line-height: 2;
    position: relative;
    }
     
    .mkl_pc .mkl_pc_container .mkl_pc_toolbar section.choices {
    position: relative;
    height: 100%;
    overflow: hidden;
    overflow-y: auto;
    }

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 209
    Par défaut
    je pense que l'élément principal sur lequel se base la fenêtre est un UL (et le LI qui va avec), qui a effectivement une propriété transform.
    la voilà la source de ton problème.

    Pour palier à cela, et considérant que le transform est utile, il te suffit de placer ton élément <div class="modalLayer" id="modalContent"> comme enfant direct du <body> ce qui ne changera pas le résultat au click sur ton lien.

  5. #5
    Membre averti
    Inscrit en
    Mai 2003
    Messages
    40
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2003
    Messages : 40
    Par défaut
    hmmm, ça ne m'arrange pas cette affaire :-)
    En fait tout le code générant la fenêtre est inclus dans un champ d'un plugin wordpress, donc je ne peux pas la bouger... Je suis donc dans une impasse ? Car le contenu de cette fenêtre sera à chaque fois chargé dans le champ du plugin (pour un catalogue de plusieurs dizaines de références). A la base ce n'était qu'un petit champ texte brut, mais mon ami pour qui je regarde cela voudrait afficher plus de détails dans une fenêtre modale...

  6. #6
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 670
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 670
    Par défaut
    il y a certaines extensions wordpress qui ont été bien réfléchies dés le début pour pouvoir être personnalisées.
    de quelle extension s'agit il ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème d'affichage de ma pagination (sortir d'une div float)
    Par shadypierre dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 18/02/2009, 15h40
  2. Afficher une div sans perturber le flux
    Par webrider dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 19/03/2008, 09h54
  3. [XHTML] [INTERMEDIAIRE] XHTML : Effacement d'une div...
    Par SpeCiE dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 26/04/2005, 16h09
  4. Centrer une <div> en position fixe sous IE
    Par Jorus dans le forum Mise en page CSS
    Réponses: 8
    Dernier message: 23/09/2004, 15h29
  5. [langage] sortir une procédure
    Par BEAUJAULT dans le forum Langage
    Réponses: 18
    Dernier message: 29/07/2004, 14h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo