Solucionado (ver solução)
Solucionado
(ver solução)
9
respostas

Auto size HTML Modal

Boa noite,

E como faço para utilizar um size automatico? Sem que utilize o style, pois no meu site a parte que coloquei não lê style, ele ignora. Gostaria de deixar o tamanho da Modal do tamanho do que escrevi.

<style type="text/css">
    @media screen and (min-width: 768px) {
        .modal-dialog {
            width: 700px;
            /* New width for default modal */
        }
        .modal-sm {
            width: 350px;
            /* New width for small modal */
        }
    }

    @media screen and (min-width: 992px) {
        .modal-lg {
            width: 950px;
            /* New width for large modal */
        }
    }

</style>
9 respostas

Marcel, você pode adicionar a class no seu arquivo .css

.modal-auto{
    max-width: 100%;
    width: auto !important;
    display: table;
}

Ou por um style inline** na tag da modal

<div class="modal-dialog" style="max-width: 100%; width: auto; display: table;">

**Prefira sempre criar classes no seu arquivo .css, utilizar o style inline não é uma boa prática.

Ou por um style inline** na tag da modal

<div class="modal-dialog" style="max-width: 100%; width: auto; display: table;">

Não consegui. Em relação ao css, não tem como, pq estou puxando de um item que so aceita html, mas aceita script e jquerys.

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
    <script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>

<body>

    <div class="container">
        <h2>Alerta de Manutenção</h2>
        <!-- Trigger the modal with a button -->
        <button type="button" class="btn btn-info btn-lg" data-toggle="modal" data-target="#myModal">Clique Aqui</button>

        <!-- Modal -->

        <div class="modal fade" id="myModal" role="dialog">
            <div class="modal-dialog modal-sm" style="max-width: 100%; width: auto; display: table;">
                <div class="modal-content">
                    <div class="modal-header">
                        <button type="button" class="close" data-dismiss="modal">&times;</button>
                        <h4 class="modal-title">O Site vai estar em Manutenção</h4>
                    </div>
                    <div class="modal-body">
                        <p>Na quarta feira do dia</p>

                        <p>20 de setembro.</p>
                    </div>
                    <div class="modal-body">
                        <p>Tempo Estimado: O dia todo</p>
                    </div>
                    <div class="modal-footer">
                        <button type="button" class="btn btn-default" data-dismiss="modal">OK</button>
                    </div>
                    <div class="modal-auto">
                        <script>
                            $(document).ready(function() {
                                $('#myModal').modal('show');
                            });

                        </script>
                    </div>
                    <div class="modal-resize">
                        <script>
                            $('.modal-content').resizable({
                                //alsoResize: ".modal-dialog",
                                minHeight: 300,
                                minWidth: 300
                            });
                            $('.modal-dialog').draggable();

                            $('#myModal').on('show.bs.modal', function() {
                                $(this).find('.modal-body').css({
                                    'max-height': '100%'
                                });
                            });

                        </script>
                    </div>
                </div>
            </div>
        </div>
    </div>


</body>

</html>

Marcel, fiz um exemplo lá no codepen

https://codepen.io/lucasbeskow/pen/RLaKaq?editors=1000

Para o title não quebrar, foi necessário adicionar um style tbm.

<h4 class="modal-title" style="margin-right:20px">O Site vai estar em Manutenção</h4>

Agora a largura da modal vai se ajustar conforme seu conteúdo, seja no modal-header ou no modal-body

Boa tarde,

Deu certo, mas de uma forma errada hehe. A modal ficou grande, e o conteúdo ficou do tamanho certo.

Não consigo colocar meu print de exemplo. mas ficou mais ou menos assim


|O Site vai estar em Manutenção X | |... | |... | |... | | _ || | OK | || |_ | | |_ |

O X veio para o meio da Modal ao invés de estar na ponta do canto superior direito.

http://www.cnj.jus.br/eadcnj/

O aviso ta nesse site. Vou botar pra você ver como o aviso ficou

Trocando o style do .modal-dialog para o .modal funcionou aqui

<div class="modal fade" id="myModal" role="dialog" style="max-width: 100%;width: auto;display: table;">

Mas eu coloco aonde? Por que ele está só fazendo o efeito de fade. Sem mostrar a janela modal

<div class="container">
        <h2>Alerta de Manutenção</h2>
        <!-- Trigger the modal with a button -->
        <button type="button" class="btn btn-info btn-lg" data-toggle="modal" data-target="#myModal">Clique Aqui</button>

        <!-- Modal -->
        <div class="modal fade" id="myModal" role="dialog">
            <div class="modal fade" id="myModal" role="dialog" style="max-width: 100%;width: auto;display: table;">
                <div class="modal-content">
                    <div class="modal-header">
                        <button type="button" class="close" data-dismiss="modal">&times;</button>
                        <h4 class="modal-title" style="margin-right:20px">O Site vai estar em Manutenção</h4>
                    </div>
                    <div class="modal-body">
                        <p>Na quarta feira do dia</p>

                        <p>20 de setembro.</p>

                        <p>Tempo Estimado: O dia todo</p>
                    </div>

                    <div class="modal-footer">
                        <button type="button" class="btn btn-default" data-dismiss="modal">OK</button>
                    </div>
                </div>
            </div>
        </div>
    </div>
solução!

Marcel, o CSS da modal que estávamos usamos no exemplo era diferente do que o CSS do theme que seu site usa. Por isso estava acontecendo esses problemas.

Simulei o CSS do seu site no exemplo, adicionei mais uma DIV para envolve e centralizar a modal e agora acredito que o comportamento esteja como você espera, confere lá

https://codepen.io/lucasbeskow/pen/RLaKaq?editors=1100

Opa, entendi, então para esses casos preciso criar uma div somente para style neh? E claro para a modal funcionar preciso jogar um comando para title. Muito Obrigado pela ajuda.