Saya membuat modal:
var modal = $modal.open({
templateUrl: "/partials/welcome",
controller: "welcomeCtrl",
backdrop: "static",
scope: $scope,
});
apakah ada cara untuk menambah lebarnya?
angularjs
angular-ui-bootstrap
Ivan Bacher
sumber
sumber
Jawaban:
Saya menggunakan kelas css seperti itu untuk menargetkan kelas modal-dialog:
Kemudian di pengontrol yang memanggil jendela modal, setel windowClass:
sumber
.modal-dialog
Cara mudah lainnya adalah dengan menggunakan 2 ukuran yang telah dibuat sebelumnya dan meneruskannya sebagai parameter saat memanggil fungsi di html Anda. gunakan: 'lg' untuk modals besar dengan lebar 900px 'sm' untuk modals kecil dengan lebar 300px atau tanpa melewatkan parameter gunakan ukuran default yaitu 600px.
kode contoh:
dan di html saya akan menggunakan sesuatu seperti berikut:
sumber
Anda dapat menentukan lebar khusus untuk kelas .modal-lg khusus untuk munculan Anda untuk resolusi viewport yang lebih luas. Berikut cara melakukannya:
CSS:
JS:
sumber
Saat kita membuka modal, ia menerima ukuran sebagai parameter:
Nilai yang memungkinkan untuk ukurannya:
sm, md, lg
HTML:
Jika Anda menginginkan ukuran tertentu, tambahkan gaya pada model HTML:
sumber
ada cara lain di mana Anda tidak perlu menimpa kelas uibModal dan menggunakannya jika diperlukan: Anda memanggil fungsi $ uibModal.open dengan jenis ukuran Anda sendiri seperti "xlg" dan kemudian Anda menentukan kelas bernama "modal-xlg" seperti di bawah ini :
panggil $ uibModal.open sebagai:
dan ini akan berhasil. karena string apa pun yang Anda berikan sebagai ukuran bootstrap akan menggabungkannya dengan "modal-" dan ini akan memainkan peran kelas untuk jendela.
sumber
Saya merasa lebih mudah untuk mengambil alih template dari Bootstrap-ui. Saya masih membiarkan HTML komentar tetap di tempatnya untuk menunjukkan apa yang saya ubah.
Timpa template default mereka:
Ubah template dialog Anda (perhatikan DIV pembungkus yang berisi kelas "modal-dialog" dan kelas "modal-content"):
Dan kemudian panggil modal dengan kelas CSS atau parameter gaya apa pun yang ingin Anda ubah (dengan asumsi Anda telah mendefinisikan "app" di tempat lain):
Tambahkan tombol "buka" dan tembak.
Sekarang Anda dapat menambahkan kelas tambahan apa pun yang Anda inginkan, atau cukup ubah ukuran lebar / tinggi seperlunya.
Saya lebih lanjut menyertakannya dalam petunjuk pembungkus, yang seharusnya sepele dari titik ini dan seterusnya.
Bersulang.
sumber
Saya memecahkan masalah menggunakan solusi Dmitry Komin, tetapi dengan sintaks CSS yang berbeda untuk membuatnya berfungsi langsung di browser.
CSS
JS sama:
sumber
sumber
Jika Anda ingin menggunakan ukuran besar default, Anda dapat menambahkan 'modal-lg':
sumber
Gunakan max-width pada modal-dialog untuk sudut 5
dan gunakan windowClass seperti yang direkomendasikan lainnya, TS misalnya:
Juga, saya harus meletakkan kode css di global styles> styles.css.
sumber