UNPKG

@pmwcs/avatar

Version:

PMWCS avatar component

133 lines (109 loc) 2.38 kB
/** Standard avatars */ .pmwc-avatar { display: inline-block; vertical-align: middle; position: relative; font-size: 1.5rem; height: 1em; font-family: inherit; border-radius: 50%; background: var(--mdc-theme-surface, white); color: var(--mdc-theme-text-hint-on-background, rgba(0, 0, 0, 0.38)); } .pmwc-avatar--interactive { cursor: pointer; } .pmwc-avatar__icon { border-radius: inherit; width: 100%; height: 100%; background: transparent none no-repeat center center / cover; opacity: 0; transition: opacity 0.2s; } .pmwc-avatar--has-image .pmwc-avatar__text { opacity: 0; } .pmwc-avatar--has-image .pmwc-avatar__icon { opacity: 1; } .pmwc-avatar__text { text-decoration: uppercase; width: 1em; min-width: 1em; max-width: 1em; height: 1em; max-height: 1em; min-height: 1em; line-height: 1em; text-align: center; border-radius: inherit; user-select: none; transition: opacity 0.2s; } .pmwc-avatar__text-inner { text-decoration: uppercase; font-size: 0.5em; font-weight: bold; } .pmwc-avatar--smaller-text .pmwc-avatar__text-inner { font-size: 0.35em; } .pmwc-avatar__icon { position: absolute; } /** Square avatars */ .pmwc-avatar--square { border-radius: 0.1875rem; } /** Avatar sizes */ .pmwc-avatar--xsmall { font-size: 1.125rem; } .pmwc-avatar--small { font-size: 1.25rem; } .pmwc-avatar--medium { font-size: 1.5rem; } .pmwc-avatar--large { font-size: 2.25rem; } .pmwc-avatar--xlarge { font-size: 3rem; } .pmwc-avatar .pmwc-avatar__icon { font-size: 1em; } /** Avatar count */ .pmwc-avatar--count { background: var(--mdc-theme-primary, #6200ee); color: var(--mdc-theme-on-primary, white); } .pmwc-avatar--count-overflow .pmwc-avatar__text-inner:before { content: '+'; font-size: 0.66em; vertical-align: top; margin-right: 2px; } /** Avatar groups */ .pmwc-avatar-group { display: inline-block; vertical-align: middle; } .pmwc-avatar-group .pmwc-avatar { margin: 0.125em; } .pmwc-avatar-group--dense .pmwc-avatar { margin-left: -0.125em; margin-right: -0.125em; } .pmwc-avatar-group--dense .pmwc-avatar:first-of-type { margin-left: 0.125em; } .pmwc-avatar-group--dense .pmwc-avatar:not(:first-of-type) .pmwc-avatar__text { box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3); } .pmwc-avatar-group--dense .pmwc-avatar:last-of-type { margin-right: 0.125em; }