2012-08-22 15 views
11

Hola quiero saber si puedo obtener ayuda sobre esto ya que no he encontrado nada en la red que solucione este problema, en el iphone el cuadro modal de arranque de Twitter cuando es demasiado grande no tiene desplazamiento para obtener el pie de página de la caja.Modal box en iPhone no scroll

código utilizado

<div class="modal hide" id="electricityModal"> 

     <div class="modal-header"> 
      <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button> 
      <h3>Submit A Electricity Reading</h3> 
     </div> 

     <div class="modal-body"> 

      <div class="control-group"> 
       <label class="control-label">Date/Time</label> 
        <div class="controls"> 
         <span class="input-medium uneditable-input">22 Aug 2012, 9:45AM</span> 
        </div> 
      </div> 

      <div class="control-group"> 
       <label class="control-label" for="reading-peak">Peak</label> 
       <div class="controls"> 
        <input style="letter-spacing: 10px;" type="text" id="reading-peak" class="input-medium"> 
       </div> 
      </div> 

      <div class="control-group"> 
       <label class="control-label" for="reading-off-peak">Off Peak</label> 
       <div class="controls"> 
        <input style="letter-spacing: 10px;" type="text" id="reading-off-peak" class="input-medium"> 
       </div> 
      </div> 

     </div> 

     <div class="modal-footer"> 
      <button class="btn" data-dismiss="modal" aria-hidden="true">Close</button> 
      <button class="btn btn-primary">Lodge Reading</button> 
     </div> 
    </div> 

Respuesta

20

Arreglo para ello, se agrega el siguiente CSS (se encuentra en problemas sin ayuda de nadie GitHub)

@media (max-width: 480px) { 

     .modal { 
      height: 500px; /* Set a default max height of the modal (adjusted later)*/ 
      position: fixed; /* Display modal in the centre of your screen */ 
      overflow-y: scroll; /* Ensure that the modal is scroll-able */ 
      -webkit-overflow-scrolling: touch; /* Avoid having to use 2 finger scroll on iOS */ 
     } 
     .modal.fade.in{ 
      top: 5px; /* Use more screen real estate */ 
     } 
     .modal-body{ 
      /* Increase the max height of the modal body to try & avoid both it, 
      * and the modal container having scroll bars which results in odd behavior */ 
      max-height: 2400px; 
     } 
    } 

    /* Now adjust the height so it handles various screen sizes & orientations */ 
    /* You could make this as granular as you like, or have it more granular at common screen sizes 
    * but it should start at the height we set on .modal (i.e. 500px) & work down */ 
    @media (max-width: 480px) and (max-height: 500px){.modal{ height: 450px}} 
    @media (max-width: 480px) and (max-height: 450px){.modal{ height: 400px}} 
    @media (max-width: 480px) and (max-height: 400px){.modal{ height: 350px}} 
    @media (max-width: 480px) and (max-height: 350px){.modal{ height: 300px}} 
    @media (max-width: 480px) and (max-height: 300px){.modal{ height: 250px}} 
    @media (max-width: 480px) and (max-height: 250px){.modal{ height: 200px}} 
    @media (max-width: 480px) and (max-height: 200px){.modal{ height: 150px}} 
+1

Para mí solo funcionó como una solución parcial. El formulario ahora es desplazable, pero solo en el primer programa. Una vez que lo desplazo una vez o trato de manipular cualquier objeto de forma interna, todo vuelve a romperse. Je. Gracias por compartir esto! – Kirill

+0

esto no solucionó mi problema en particular, pero me ayudó. ¡Gracias! – kiev

+0

¡Similar a @Kirill, esto es casi lo mismo para mí! Funciona inicialmente, pero cuando intento seleccionar un valor de una lista desplegable (que iPhone se arruina por completo), el error vuelve. Supongo que están modificando los elementos de la página de una manera que revierte esta corrección css :( –

0

Creo que dar una propiedad max-height CSS para el div padre (id: electricityModal) podría ayudar y dar una barra de desplazamiento. Elija la altura que mejor se adapte a usted. Di algo como 250px.

+1

intentaron que junto no funcionó después de hacer mucho más que buscan encontrado una solución. –