Visualizzazione dei risultati da 1 a 1 su 1
  1. #1
    Utente di HTML.it L'avatar di atm
    Registrato dal
    Nov 2009
    Messaggi
    54

    Visualizzare immagine a tutto schermo in overlay

    Ciao ragazzi, buongiorno.

    Sto sviluppando un sito responsive e ho la necessità nella pagina di galleria di mostrare a tutto schermo l'immagine che l'utente sceglie.

    Vedere allegato per il risultato atteso.

    La X chiude il div di Overlay e relativa immagine, il div di overlay ha colore sfondo a piacere.
    Sono riuscito a fare quasi tutto; il problema è che l'immagine non riesco a dargli una grandezza esatta(non voglio che sia fissa). In pratica voglio che se è più grande delle dimensioni dello schermo allora la metto più piccola, se invece l'immagine è più piccola allora la mostro con le dimensioni reali.

    Spero di essere stato chiaro

    Porzione di codice HTML
    codice:
    <div class="overlay" id="overlay" style="display: none;">
    </div>
    <div class="box" id="box">
       <a class="boxclose" id="boxclose"></a>
    </div>
    Porzione di codice CSS
    codice:
    .overlay
            {
                background: black;
                opacity: .5;
                position: fixed;
                top: 0px;
                bottom: 0px;
                left: 0px;
                right: 0px;
                z-index: 100;
            }
            .box
            {
                position: fixed;
                top: -200px;
                left: 0;
                background-color: #fff;
                color: #7F7F7F;
                padding: 20px;
                margin:20px;
                border: 2px solid #ccc;
                -moz-border-radius: 20px;
                -webkit-border-radius: 20px;
                -khtml-border-radius: 20px;
                -moz-box-shadow: 0 1px 5px #333;
                -webkit-box-shadow: 0 1px 5px #333;
                z-index: 1;
            }
            a.boxclose
            {
                float: right;
                margin-top: -30px;
                margin-right: -30px;
                cursor: pointer;
                color: #fff;
                border: 1px solid #AEAEAE;
                border-radius: 30px;
                background: #605F61;
                font-size: 31px;
                font-weight: bold;
                display: inline-block;
                line-height: 0px;
                padding: 11px 3px;
            }
            
            .boxclose:before
            {
                content: "×";
            }
    Porzione di codice JAVASCRIPT
    codice:
    $('.image').on('click', function () {
                    var img = $('<img />', { src: this.src,
                        'class': 'fullImage'
                    });
                    $("#box").append(img);
                    $('#overlay').fadeIn(200, function () {
                        $('#box').animate({ 'top': '0px' }, 200);
                    });
                    return false;
                });
    
                $('#boxclose').click(function () {
                    $('#box').animate({ 'top': '-200px' }, 500, function () {
                        $("#box img:last-child").remove();
                        $('#overlay').fadeOut('fast');
                    });
                });
    p.s. aiutatemi sono disperato

    Grazi a tutti
    Buon lavoro
    Immagini allegate Immagini allegate

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.