2013-01-09 35 views
11

Tôi đã tìm thấy một cách để làm điều này:Bootstrap 2 - set thoại/modal vị trí

lề sử dụng để kiểm soát vị trí hộp thoại để margin: -335px 0 0 -280px;

thiết lập chiều rộng, bạn phải thiết lập lại lề width: 900px; margin: -250px 0 0 -450px;

để thiết lập chiều cao sử dụng max-height max-height: 800px; dựa trên

http://www.revillwebdesign.com/change-the-height-width-and-position-of-a-modal-in-twitter-bootstrap/

Có cách nào tốt hơn để làm điều này? Sử dụng phương pháp này hoặc cách tiếp cận khác, có cách nào để chỉ trượt hộp thoại xuống top:0px và ở đó cho đến khi bị loại bỏ không?

Sử dụng cài đặt lề đầu tiên mà tôi đã đề cập, nhưng rõ ràng ngay sau khi trình duyệt được thay đổi kích thước, nó sẽ bị đẩy ra khỏi tầm nhìn.

Trả lời

17

Đơn giản chỉ cần ghi đè lên vị trí CSS, ví dụ:

.modal, .modal.fade.in { 
    top: 0; /* was 10% */ 
} 

Lưu ý, đây là với Bootstrap 2.2.2. Lề duy nhất là lề trái âm, bằng một nửa chiều rộng của phương thức (đặt giữa phương thức theo chiều ngang). Không yêu cầu lợi nhuận hàng đầu.

jsFiddle ví dụ ở đây - http://jsfiddle.net/uuwAn/1/

+0

Rất tiếc là không hoạt động. Tôi cập nhật lên 2.2.2 tôi đã ở trên 2.2.1. Nó sẽ gửi màn hình tắt phương thức - chơi với đầu: * mất khoảng 40% cho nó ở trên cùng của màn hình. bất cứ điều gì ít hơn và nó bắn lên – zcourts

+1

Cảm ơn bạn đã cập nhật @Phil hóa ra đó là vị trí của đánh dấu. Đó là một ứng dụng trang duy nhất và tôi đặt gần nút mà nó liên quan đến mà không nhận ra nó nằm trong một thẻ mà css ảnh hưởng đến nó khi được hiển thị. Làm việc tốt ngay bây giờ. Cảm ơn – zcourts

0

Bạn có thể thay đổi CSS ở cuối của bạn để lưu trữ hành vi này.

.modal-body { 
    max-height: 350px; 
    -webkit-overflow-scrolling: touch; 
} 

@media screen and (max-height: 450px), (max-height: 450px) { 
    .modal-body { 
     max-height: 130px; 
    } 

} 

Bây giờ, thiết bị sẽ hoạt động tốt trên thiết bị di động. LƯU Ý: được thực hiện bằng cách sử dụng truy vấn Phương tiện là CSS.

Các vấn đề liên quan