UNPKG

@rtdui/tailwind-plugin

Version:

tailwind plugin for Rtdui components

168 lines (165 loc) 3.82 kB
/****** shiki语法高亮 明暗主题 ******/ @media (prefers-color-scheme: dark) { .shiki { color: var(--shiki-dark) !important; background-color: var(--shiki-dark-bg) !important; span:not(.line) { color: var(--shiki-dark) !important; } .line.line.diff.remove { background-color: var(--color-red-800); } .line.line.diff.add { background-color: var(--color-green-700); } .line.line.highlighted.warning { background-color: var(--color-yellow-700); } .line.line.highlighted.error { background-color: var(--color-red-800); } } } [data-theme="dark"] { .shiki { color: var(--shiki-dark) !important; background-color: var(--shiki-dark-bg) !important; span:not(.line) { color: var(--shiki-dark) !important; } .line.line.diff.remove { background-color: var(--color-red-800); } .line.line.diff.add { background-color: var(--color-green-700); } .line.line.highlighted.warning { background-color: var(--color-yellow-700); } .line.line.highlighted.error { background-color: var(--color-red-800); } } } pre.shiki { padding: 24px 0; margin-bottom: 8px; position: relative; line-height: 20px; &::before { content: attr(data-language); position: absolute; right: 0; top: 0; padding: 0 0.25rem; background-color: var(--color-base-300); color: var(--color-gray-500); } code { display: block; padding: 0 24px; .line { display: block; min-height: 20px; &::before { position: absolute; left: 8px; } } } /* 高亮行 */ &.has-highlighted { .line.highlighted { transition: background-color 0.5s; margin: 0 -24px; padding: 0 24px; /* width: calc(100% + 48px); */ background-color: var(--color-base-300); /* 错误级别 */ &.warning { background-color: var(--color-yellow-200); /* opacity: 0.9; */ } &.error { background-color: var(--color-red-300); /* opacity: 0.9; */ } } } /* 焦点行 */ &.has-focused { .line:not(.focused) { filter: blur(0.095rem); } &:hover { .line:not(.focused) { filter: blur(0); } } } /* 差异行 */ &.has-diff { .line.diff { transition: background-color 0.5s; margin: 0 -24px; padding: 0 24px; /* width: calc(100% + 48px); */ &.remove { background-color: var(--color-red-100); user-select: none; &::before { content: "-"; color: var(--color-red-500); } } &.add { background-color: var(--color-green-200); &::before { content: "+"; color: var(--color-green-600); } } } } /* 行号 */ &.has-line-number { code { counter-reset: row_number; .line { margin: 0 -24px; padding: 0 24px 0 56px; /* width: calc(100% + 48px); */ &::before { content: counter(row_number); counter-increment: row_number; /* width: 1rem; text-align: right; */ color: var(--color-gray-500); margin-right: 1em; } &.highlighted, &.diff { padding-left: 56px; } &.diff.remove { &::before { content: counter(row_number) " -"; } } &.diff.add { &::before { content: counter(row_number) " +"; } } } } } /* 词高亮 */ .highlighted-word { background-color: var(--color-base-300); /* border: 1px solid var(--color-base-300); */ padding: 1px 3px; margin: -1px -2px; border-radius: 4px; } }