我正在尝试使用角度材料创建具有一些背景颜色的吐司面具.我使用这个问题的答案,我创建了这个codepen,但它也显示了一些不想要的背景toast.
HTML:
Toast is not properly working with theme defined in CSS.
Toast
CSS:
md-toast.md-success-toast-theme { background-color: green; } md-toast.md-error-toast-theme { background-color: maroon; position: 'top right' } md-toast { height: 40px; width: 50px; margin-left: auto; margin-right: auto; left: 0; right: 0; top:10px; }
JS:
angular.module('MyApp',['ngMaterial', 'ngMessages']) .controller('AppCtrl', function($scope, $mdToast, $document) { $scope.showSimpleToast = function() { $mdToast.show( $mdToast.simple() .textContent('Simple lala Toast!') .theme('success-toast') .hideDelay(3000) ); }; })
Thatkookoogu.. 15
定位吐司
您可以只将md-toast
位置放在正确的位置,而不是给所有东西(切割你的吐司)一个位置.
通过文档,您可以正式放置吐司的四个位置:左上角,右上角,左下角,右下角.所以,首先,让我们将吐司放在左上角(这对于动画的变化非常重要.此外,这将允许我们在底部中心显示祝酒词).
$mdToast.show( $mdToast.simple() .textContent('Simple lala Toast!') .position('top')
现在,在css中,只需定位你的吐司:
md-toast { left: calc(50vw - 150px); }
这将把吐司定位在视口的中心,减去吐司的一半.
你也可以通过javascript单独在底部中心显示祝酒词:
$mdToast.show( $mdToast.simple() .textContent('Simple lala Toast!') .position('bottom')
并且toast将在底部居中并使用正确的动画来显示它.
着色吐司你为吐司的容器着色而不是吐司的实际内容.要为toast着色,可以添加以下css样式:
md-toast.md-success-toast-theme .md-toast-content { background-color: green; }
您可以更改toast的主题以不覆盖默认的Toast样式.此外,更改特定主题的位置可以帮助同时使用这两个位置(默认和手动)(通过更改主题).
md-toast.md-thatkookooguy-toast-theme { left: calc(50vw - 150px); }
这是一个有效的FORK for codepen.
您可以只将md-toast
位置放在正确的位置,而不是给所有东西(切割你的吐司)一个位置.
通过文档,您可以正式放置吐司的四个位置:左上角,右上角,左下角,右下角.所以,首先,让我们将吐司放在左上角(这对于动画的变化非常重要.此外,这将允许我们在底部中心显示祝酒词).
$mdToast.show( $mdToast.simple() .textContent('Simple lala Toast!') .position('top')
现在,在css中,只需定位你的吐司:
md-toast { left: calc(50vw - 150px); }
这将把吐司定位在视口的中心,减去吐司的一半.
你也可以通过javascript单独在底部中心显示祝酒词:
$mdToast.show( $mdToast.simple() .textContent('Simple lala Toast!') .position('bottom')
并且toast将在底部居中并使用正确的动画来显示它.
着色吐司你为吐司的容器着色而不是吐司的实际内容.要为toast着色,可以添加以下css样式:
md-toast.md-success-toast-theme .md-toast-content { background-color: green; }
您可以更改toast的主题以不覆盖默认的Toast样式.此外,更改特定主题的位置可以帮助同时使用这两个位置(默认和手动)(通过更改主题).
md-toast.md-thatkookooguy-toast-theme { left: calc(50vw - 150px); }
这是一个有效的FORK for codepen.
使用时
$mdToast.simple().theme('sometheme');
控制台中发生了一个警告,指出尚未定义指定的主题.更好的是使用toastClass属性.
var message = "An error occured!"; $mdToast.show($mdToast.simple({ hideDelay: 126000, position: 'top right', content: message, toastClass: 'error' }));
SCSS:
$red: rgb(244, 67, 54); $green: rgb(76, 175, 80); md-toast { &.error { .md-toast-content { background: $red; color: white; } } &.success { .md-toast-content { background: $green; color: white; } } }
工作示例Codepen