角度のある素材のmd-sidenav要素で作業しています。左側にあり、クリックすると左に折り畳まれます。このクローズ/折りたたみアクションはcss transform:translate3d(-100%、0,0)で行われますが、それについて読むと、リソースを節約するために変換中のイメージとして要素がフリーズすることがわかります。約1秒間の遅延(私は思う)、ユーザーに見える。私は同じ折り畳みアニメーションで置換を探しています。 私はposition:relativeスタイルをmd-sidenavに追加しました。これは要素に必要な振る舞いを与えましたが、この問題があればコアにあります。md-sidenav折りたたみ左の遅延、変換の代替品を探しています
HTML:
<div ng-app="myModule">
<div ng-controller="myCtrl" layout="column" style="height: 100%;" ng-cloak>
<section layout="row" flex>
<md-sidenav class="md-sidenav-left" md-component-id="left"
md-disable-backdrop md-whiteframe="4" style="position: relative;">
<md-toolbar class="md-theme-indigo">
<h1 class="md-toolbar-tools">Disabled Backdrop</h1>
</md-toolbar>
<md-content layout-margin>
</md-content>
</md-sidenav>
<md-content flex >
<md-toolbar layout="row">
testing123
</md-toolbar>
<div layout="column" layout-align="top center" style="background-color:#ff5252;">
<div>
<md-button ng-click="toggleLeft()" class="md-raised">
Toggle Sidenav
</md-button>
</div>
</div>
</md-content>
</section>
</div>
</div>
JS:
angular.module('myModule', ['ngMaterial'])
.controller('myCtrl', function ($scope, $timeout, $mdSidenav) {
$scope.toggleLeft = buildToggler('left');
$scope.toggleRight = buildToggler('right');
function buildToggler(componentId) {
return function() {
$mdSidenav(componentId).toggle();
}
}
});
CSS:
.md-sidenav-left.md-closed, md-sidenav.md-closed {
//original angular-matireal code
-webkit-transform: translate3d(-100%,0,0) !important;
transform: translate3d(-100%,0,0) !important;
/* my tempoory solution */
/* -webkit-transform: translate3d(0,0,0) !important;
transform: translate3d(0,0,0) !important; */
}
https://jsfiddle.net/suunyz3e/340/