2016-06-06 2 views
0

У меня есть модальное окно, но когда нажата кнопка, которая активирует его, модальный, который появляется, разрезается пополам, like this. В маленьком окне модаль выглядит просто отлично. Извините за код, это своего рода беспорядок.Bootstrap modal cut in half

<!-- index.html --> 
<!doctype html> 
<!-- ASSIGN OUR ANGULAR MODULE --> 
<html ng-app="scotchTodo"> 
<head> 
<!-- META --> 
<meta charset="utf-8"> 
<meta name="viewport" content="width=device-width, initial-scale=1"><!-- Optimize mobile viewport --> 

<title>OAMK Opinnäytetyöt</title> 

<!-- SCROLLS --> 
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script> 
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script> 
<link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css"><!-- load bootstrap --> 
<style> 
    html     { overflow-y:scroll; } 
    body     { padding-top:50px; } 
    #todo-list    { margin-bottom:30px; } 


</style> 

<!-- SPELLS --> 
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script><!-- load jquery --> 
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.0.8/angular.min.js"></script><!-- load angular --> 
<script src="core.js"></script> 

</head> 
<!-- SET THE CONTROLLER AND GET ALL TODOS --> 
<body ng-controller="mainController"> 
<div class="container"> 

    <!-- HEADER AND TODO COUNT --> 
    <div class="jumbotron text-center"> 
     <h1>OAMK Opinnäytetyöt</h1> 
    </div> 

    <!-- Trigger the modal with a button --> 
<button type="button" class="btn btn-info btn-lg text-center" data-toggle="modal" data-target="#myModal">Lisää uusi aihe</button> 

    <!-- TODO LIST --> 
    <div id="todo-list" class="row"> 
     <div class="col-sm-10> 

      <!-- LOOP OVER THE TODOS IN $scope.todos --> 
      <div class="checkbox" ng-repeat="todo in todos"> 
       <label> 
       <h1> 
        <input type="checkbox" ng-click="deleteTodo(todo._id)"> {{ todo.aihe }} 
       </h1> 
       </label> 
       <br> 
        {{ todo.kuvaus }} 

      </div> 

     </div> 
    </div> 

    <div class="container"> 


<!-- Modal --> 
<div class="modal fade" id="myModal" role="dialog"> 
<div class="modal-dialog modal-sm"> 
    <!-- Modal content--> 
    <div class="modal-content"> 
    <div class="modal-header"> 
     <button type="button" class="close" data-dismiss="modal">&times;</button> 
     <h4 class="modal-title">Modal Header</h4> 
    </div> 
    <div class="modal-body"> 
     <p><!-- FORM TO CREATE TODOS --> 
    <div id="todo-form" class="row"> 
     <div class="col-sm-8 col-sm-offset-2 text-center"> 
      <form> 
       <div class="form-group"> 

        <!-- BIND THIS VALUE TO formData.text IN ANGULAR --> 
        <input type="text" maxlength="50" class="form-control input-lg" placeholder="Aihe (max. 50 merkkiä)" ng-model="formData.aihe"> 
        <input type="text" maxlength="255"class="form-control input-lg" placeholder="Kuvaus (max. 255 merkkiä)" ng-model="formData.kuvaus"> 
       </div> 

       <!-- createToDo() WILL CREATE NEW TODOS --> 
       <button type="submit" class="btn btn-primary btn-lg" data-dismiss="modal" ng-click="createTodo()">Lisää</button> 
      </form> 
     </div> 
    </div></p> 
    </div> 
    <div class="modal-footer"> 
     <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> 
    </div> 
    </div> 

</div> 
</div> 

</div> 

</div> 

</body> 
</html> 
+0

Можно ли ваш CSS на '# myModal' является затрагивая его? –

+0

Без CSS модальность по-прежнему уменьшается вдвое, это просто в другом месте: i.stack.imgur.com/srpAf.png – akuj

+0

Что касается вашего обновления, с помощью этого точного кода, он отлично работает ... Не так ли? Я не могу воспроизвести ваши ошибки ... http://imgur.com/CD9yQw7 Это в Chrome - Максимизировано. Он также отлично работает в I Explorer – chrisv

ответ

1

Что вы пытаетесь достичь с помощью своего CSS? Ваш код работает очень хорошо без CSS!

Проверить скрипку: https://jsfiddle.net/eoug80b8/

Разве это не то, что вы ищете? : P

Если вам нужно использовать свой собственный стиль CSS, вы должны хотя бы удалить эту строку: left: -100%;, так как это испортит некоторые вещи!

Новой скрипку без этой конкретной линии https://jsfiddle.net/eoug80b8/1/

Кроме того: Если вы идете с последним решением, вы должны действительно пересмотреть, используя width: 140%;, так как он, вероятно, переместить кнопку закрытия за пределами видимой областью!

+0

Да, CSS существует только потому, что я пытался, если бы смог получить модальное отображение, но я удалил его сейчас. Без CSS модальность появляется на крайнем правом уровне, но все же получается пополам, наподобие [this.] [1]. Я также забыл упомянуть, что модаль отлично выглядит в маленьком окне, точно так же, как ваша скрипка. [1]: http://i.stack.imgur.com/srpAf.png – akuj

+0

Тогда я думаю, нам нужно увидеть остальную часть вашего CSS. Похоже, что у вас есть проблема с избыточным HTML или элементом BODY или с чем-то подобным.Диалог должен изменяться и центрироваться до тех пор, пока вы не испортите CSS. Проверьте здесь bootstrap CSS (ctrl/cmd + F, чтобы найти modal-lg или modal-dialog): https://github.com/twbs/bootstrap/blob/master/dist/css/bootstrap.css – chrisv

+0

Вот все CSS У меня есть, не много: html {overflow-y: scroll; } body {padding-top: 50px; } # todo-list {margin-bottom: 30px; } И вот что, это может вызвать проблемы? akuj

0

Если кто-то еще протрубит по этому вопросу, я проверил код OP и имел ту же проблему, но удалил класс модального диалога внутреннего модального div. На линии <div class="modal-dialog modal-sm"> я удалил класс модального диалога, и модаль больше не разрезан пополам с правой стороны.

В качестве альтернативы вы можете просто закрыть диалоговое окно модального диалога перед запуском следующего div.

0

я столкнулся с той же проблемой, и я решил ее, добавив

<div class="modal-dialog modal-sm" style="left:0% !important"> 

вместо

<div class="modal-dialog modal-sm"> 

в модальном DIV