У меня есть приложение Angular 2 Material, которое использует <md-sidenav-layout>
с <md-toolbar>
внутри.Sticky MdToolbar внутри MdSidenavLayout
<md-sidenav-layout>
<md-sidenav #sidenav mode="side" class="app-sidenav" opened="true">
sidenav content
</md-sidenav>
<md-toolbar color="primary" class="toolbar">
toolbar content
</md-toolbar>
</md-sidenav-layout>
И это выглядит так
То, что я пытаюсь сделать, это панель инструментов клюшку к вершине, чтобы он не двигается, когда вы прокрутите вниз. Это должно привести его в соответствие с сиденавом и его названием. Но в настоящее время это не работает.
я хоть что добавление position: fixed; top: 0
будет делать трюк, но он не
/* Doesn't work */
.toolbar {
position: fixed;
top: 0;
}
Из того, что я читал из MDN: positionthis SO post и о position: fixed
, кажется, что это не будет работать, если родитель использует transform
. И я уверен, что это то, что использует md-sidenav-layout
для перехода при переключении sidenav. Я тестировал position: fixed; top: 0
на простой статической странице, и он отлично работает.
Я мог бы попытаться вывести панель инструментов из контекста md-sidenav-layout
, но это то, что обрабатывает анимацию и переход, чтобы сделать панель инструментов и сиденов последовательными, когда вы переключаете sidenav.
Мой CSS-фу не сильно. Может быть, я что-то упустил. У любого органа есть идеи о том, как это исправить? В этот момент можно приветствовать любые рабочие встречи, пока я получаю желаемый эффект.
Адрес Plunker.
Спасибо. Он отлично работает. И вы правы, имеет смысл сделать прокрутку контента, особенно с боковой панелью, которая является дорогой, о которой я еще не успел задуматься. Немного не по теме, но знаете ли вы хорошие тонкие списки прокрутки, которые вы бы рекомендовали для Angular 2? –
@peeskillet Недавно я разработал для него одну директиву в частном проекте, возможно, она работает достаточно хорошо для ваших нужд, если вы не всегда можете увидеть код и исправить то, что вам нужно. Как только я опубликую его, я отвечу вас обратно ... – cvsguimaraes
@snolflake. превосходный ответ! Я пытался и инвестировал когда-нибудь, но я не мог этого сделать. – micronyks