paricafe/src/client/app/common/views/components/ui/card.vue

60 lines
975 B
Vue
Raw Normal View History

2018-06-14 00:52:37 -05:00
<template>
2018-10-18 16:57:57 -05:00
<div class="ui-card" :class="{ shadow: $store.state.settings.useShadow }">
2018-06-14 00:52:37 -05:00
<header>
<slot name="title"></slot>
</header>
<slot></slot>
</div>
</template>
<script lang="ts">
import Vue from 'vue';
2018-06-14 04:53:02 -05:00
export default Vue.extend({
provide() {
return {
isCardChild: true
};
}
});
2018-06-14 00:52:37 -05:00
</script>
<style lang="stylus" scoped>
2018-09-27 03:29:57 -05:00
.ui-card
2018-06-14 04:53:02 -05:00
margin 16px
2018-11-29 01:24:02 -06:00
max-width 850px
2018-09-27 03:29:57 -05:00
color var(--faceText)
2018-09-26 06:28:13 -05:00
background var(--face)
2018-10-18 16:57:57 -05:00
border-radius var(--round)
&.shadow
box-shadow 0 3px 1px -2px rgba(#000, 0.2), 0 2px 2px 0 rgba(#000, 0.14), 0 1px 5px 0 rgba(#000, 0.12)
2018-06-14 02:48:49 -05:00
2018-06-14 00:52:37 -05:00
> header
2018-09-04 23:47:26 -05:00
padding 16px
font-weight bold
font-size 20px
2018-09-27 03:29:57 -05:00
color var(--faceText)
2018-06-14 07:38:39 -05:00
2018-09-04 23:47:26 -05:00
@media (min-width 500px)
padding 24px 32px
> section
padding 20px 16px
2018-09-27 03:29:57 -05:00
border-top solid 1px var(--faceDivider)
2018-09-04 23:47:26 -05:00
@media (min-width 500px)
padding 32px
&.fit-top
padding-top 0
2018-11-05 16:22:39 -06:00
&.fit-bottom
padding-bottom 0
2018-09-04 23:47:26 -05:00
> header
margin-bottom 16px
font-weight bold
2018-09-27 03:29:57 -05:00
color var(--faceText)
2018-06-14 00:52:37 -05:00
</style>