Je crée un modal:
var modal = $modal.open({
templateUrl: "/partials/welcome",
controller: "welcomeCtrl",
backdrop: "static",
scope: $scope,
});
y a-t-il un moyen d'augmenter sa largeur?
angularjs
angular-ui-bootstrap
Ivan Bacher
la source
la source
Réponses:
J'utilise une classe css comme celle-ci pour cibler la classe modal-dialog:
Ensuite, dans le contrôleur appelant la fenêtre modale, définissez windowClass:
la source
.modal-dialog
Un autre moyen simple consiste à utiliser 2 tailles prédéfinies et à les passer en paramètre lors de l'appel de la fonction dans votre html. utilisez: 'lg' pour les grands modaux avec une largeur de 900px 'sm' pour les petits modaux avec une largeur de 300px ou en ne passant aucun paramètre, vous utilisez la taille par défaut qui est de 600px.
code d'exemple:
et dans le html, j'utiliserais quelque chose comme ce qui suit:
la source
Vous pouvez spécifier une largeur personnalisée pour la classe .modal-lg spécifiquement pour votre popup pour une résolution de fenêtre plus large. Voici comment faire:
CSS:
JS:
la source
Lorsque nous ouvrons un modal, il accepte la taille comme paramètre:
Valeurs possibles pour sa taille:
sm, md, lg
HTML:
Si vous voulez une taille spécifique, ajoutez du style sur le modèle HTML:
la source
il y a une autre façon dont vous n'avez pas besoin d'écraser les classes uibModal et de les utiliser si nécessaire: vous appelez la fonction $ uibModal.open avec votre propre type de taille comme "xlg" et ensuite vous définissez une classe nommée "modal-xlg" comme ci-dessous :
appelez $ uibModal.open comme:
et cela fonctionnera. parce que quelle que soit la chaîne que vous passez comme bootstrap de taille, la cocantera avec "modal-" et cela jouera le rôle de classe pour window.
la source
J'ai trouvé plus simple de reprendre le modèle de Bootstrap-ui. J'ai laissé le HTML commenté toujours en place pour montrer ce que j'ai changé.
Remplacez leur modèle par défaut:
Modifiez votre modèle de dialogue (notez les DIV wrapper contenant la classe "modal-dialog" et la classe "modal-content"):
Et puis appelez le modal avec la classe CSS ou les paramètres de style que vous souhaitez modifier (en supposant que vous ayez déjà défini "app" ailleurs):
Ajoutez un bouton "Ouvrir" et tirez.
Vous pouvez maintenant ajouter la classe supplémentaire de votre choix, ou simplement modifier les tailles de largeur / hauteur si nécessaire.
Je l'ai en outre inclus dans une directive wrapper, ce qui devrait être trivial à partir de maintenant.
À votre santé.
la source
J'ai résolu le problème en utilisant la solution Dmitry Komin, mais avec une syntaxe CSS différente pour que cela fonctionne directement dans le navigateur.
CSS
JS est le même:
la source
la source
Si vous voulez simplement utiliser la grande taille par défaut, vous pouvez ajouter 'modal-lg':
la source
Utiliser max-width sur modal-dialog pour angulaire 5
et utilisez windowClass comme d'autres recommandés, TS par exemple:
De plus, j'ai dû mettre le code css dans styles globaux> styles.css.
la source