Comment obtenir une hauteur totale sidenav avec Angulaires-le Matériel

Je suis en utilisant Angulaires-le Matériel et ont mis en place un SideNav menu. Lorsque la taille de l'écran est petit, le menu est caché et quand on clique sur le Menu basculer bouton, le menu se déploie à partir de la gauche, avec une pleine page de hauteur. Lorsque l'écran est plus grand, le menu semble être fixé sur le côté gauche, mais pas à pleine hauteur de la page.

Comment puis-je faire le menu fixe semble être la pleine hauteur de la page.
J'ai été jouer avec le css et l'autre md attributs, mais juste ne peux pas savoir comment.

<div ng-controller="appCtrl" layout="vertical" layout-fill>

<md-toolbar class="md.medium-tall app-toolbar">
    <div class="md-toolbar-tools" ng-click="toggleMenu()">
        <button class="menu-icon" hide-sm aria-label="Toggle Menu">
            <md-icon icon="img/icons/ic_menu_24px.svg">
                <object class="md-icon" data="img/icons/ic_menu_24px.svg"></object>
            </md-icon>
        </button>
        <h2>
            <span>Dev.Material</span>
        </h2>
    </div>
</md-toolbar>

<section layout="horizontal" flex>
    <md-sidenav class="md-sidenav-left md-whiteframe-z2" component-id="menu" is-locked-open="$media('sm')">

        <md-toolbar md-theme="purple">
            <h1 class="md-toolbar-tools">Sidenav Left</h1>
        </md-toolbar>

        <md-content class="md-padding" ng-controller="menuCtrl">
            <p>
                This sidenav is locked open on your device. To go back to the default behavior,
                narrow your display.
            </p>
        </md-content>
    </md-sidenav>

    <md-content flex class="md-padding">
        Some content !!
    </md-content>

et le contrôleur:

(function () { 
'use strict';

var controllerId = 'appCtrl';
angular.module('app').controller(controllerId,
    ['$scope', '$timeout', '$mdSidenav', appCtrl]);

function appCtrl($scope, $timeout, $mdSidenav) {
    var vm = this;

    $scope.toggleMenu = function() {
        $mdSidenav('menu').toggle();
    };
};    
})();

(function () { 
'use strict';

var controllerId = 'menuCtrl';
angular.module('app').controller(controllerId,
    ['$scope', '$timeout', '$mdSidenav', menuCtrl]);

function menuCtrl($scope, $timeout, $mdSidenav) {
    var vm = this;

    $scope.close = function() {
        $mdSidenav('menu').close();
    };
};
})();
  • Vous voudrez peut-être inclure des navigateurs vous vous attendez à du soutien ici... il y a sans doute des solutions à l'aide de vh (fenêtre d'affichage de la hauteur), mais ce n'est pas disponible dans les anciennes versions de CSS. Vous pouvez également utiliser une directive qui surveille tous les événements de redimensionnement et de capture de la mise à jour de la hauteur de l'élément en utilisant offsetHeight ou peut-être l'écran.la hauteur et la stocke quelque part (dans une valeur ou d'un service à l'usine ou quoi que ce soit)
InformationsquelleAutor James | 2014-11-01