Пользовательский элемент Полимерный размер диалогового окна / положение на основе родительской страницы
Я только начал играть в диалоге Polymer. Я пытаюсь создать диалоговое окно с полимерным элементом и использовать его в бумажной карточке. Тем не менее, я столкнулся с проблемой, потому что диалоговое окно отображается на основе размера / положения бумажной карты, а не полной страницы.
Могу ли я узнать, как мне его стилизовать, чтобы размер / положение диалогового окна было основано на главной странице, а не на карточке? Спасибо.
Main page, paper-card is a 100x100px card:
<paper-card>
Text
<my-custom-dialog></my-custom-dialog>
</paper-card>
My-custom-dialog:
<dom-module id="my-custom-dialog">
<style is="custom-style">
paper-dialog {
position: absolute;
top: 3%;
left: 0px;
margin-top: 0px;
width: 100%;
height: 100%;
overflow: auto;
z-index: 1;
}
.fa-times {
cursor: pointer
}
</style>
<template>
<i class="fa fa-object-group" aria-hidden="true" on-tap="toggleDialog"></i>
<paper-dialog id="dialog" always-ontop entry-animation="scale-up-animation" exit-animation="fade-out-animation">
<div class="buttons">
<i class="fa fa-times" aria-hidden="true" dialog-confirm></i>
</div>
<strong>Text here</strong>
</paper-dialog>
</template>
</dom-module>
<script>
Polymer({
is: "my-custom-dialog",
toggleDialog: function () {
this.$.dialog.toggle();
},
})
</script>
1 ответ
Решение
БартКоппельманс прав. Бумажный диалог должен быть вне бумажной карточки. Вы все еще можете держать кнопку внутри карты.
<template>
<paper-card style="width: 50%;">
<i class="fa fa-object-group" aria-hidden="true" on-tap="toggleDialog">?</i>
</paper-card>
<paper-dialog id="dialog" always-ontop auto-fit-on-attach entry-animation="scale-up-animation" exit-animation="fade-out-animation">
<div class="buttons">
<i class="fa fa-times" aria-hidden="true" dialog-confirm></i>
</div>
<strong>Text here</strong>
</paper-dialog>
</template>