UNPKG

@opensig/opendesign

Version:

96 lines (87 loc) 2.12 kB
.o-avatar { display: inline-flex; align-items: center; justify-content: center; position: relative; overflow: hidden; flex-shrink: 0; width: var(--avatar-size); height: var(--avatar-size); font-size: calc(var(--avatar-size) * 0.4); line-height: var(--avatar-size); background: var(--avatar-bg); color: var(--avatar-color); } .o-avatar img, .o-avatar .o-avatar-default-icon { width: 100%; height: 100%; } [data-o-theme$=light] .o-avatar-default-icon circle { filter: invert(1); } .o-avatar-circle { border-radius: 50%; } .o-avatar-text { color: var(--avatar-color); } .o-avatar-trigger-icon { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; opacity: 0; transition: opacity var(--o-duration-s) var(--o-easing-standard); cursor: pointer; font-size: calc(var(--avatar-size) * 0.375); background-color: var(--avatar-mask); user-select: none; } @media (hover: hover) { .o-avatar-clickable:hover .o-avatar-trigger-icon { opacity: 1; } } .o-avatar-group-horizontal { display: inline-flex; flex-direction: row-reverse; align-items: center; } .o-avatar-group-horizontal .o-avatar { margin-left: calc(var(--avatar-size) * -4 / 24); border: var(--avatar-border); } .o-avatar-group-horizontal .o-avatar:last-child { margin-left: 0; } .o-avatar-group-symmetric { display: inline-grid; gap: 3.5px; grid-template-columns: 1fr 1fr; } .o-avatar-group-symmetric.o-avatar-group-single { grid-template-columns: 1fr; } .o-avatar-group-symmetric.o-avatar-group-triangle .o-avatar:first-child { grid-area: 1/1/2/3; justify-self: center; } .o-avatar-group-more { background-color: #cccccc; } .o-avatar-group-more .o-avatar-group-more-text { font-size: calc(var(--avatar-size) * 0.3); line-height: var(--avatar-size); max-width: calc(var(--avatar-size) * 0.8); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .o-avatar, .o-avatar-group { --avatar-color: var(--o-color-white); --avatar-mask: var(--o-color-mask1); --avatar-border: 2px solid var(--o-color-fill2); }