diff --git a/stylesheets/compiled.css b/stylesheets/compiled.css index 3c69f2981b..0639e644af 100644 --- a/stylesheets/compiled.css +++ b/stylesheets/compiled.css @@ -79,6 +79,8 @@ --color-text-success: #047857; /* Icon colors */ --color-icon-default: #78716c; + /* CJK font stack */ + --font-sans-cjk: "Plus Jakarta Sans", var(--noto-sans-subset), -apple-system, BlinkMacSystemFont; } /* Dark mode */ @@ -1962,8 +1964,12 @@ video { display: none; } -body:lang(ja),body:lang(ko),body:lang(zh-CN),body:lang(zh-TW) { - font-family: "Plus Jakarta Sans", var(--noto-sans-subset), -apple-system, BlinkMacSystemFont, sans-serif; +html [lang]:not(code):not(pre):not(kbd):not(samp){ + font-family: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, sans-serif; +} + +html [lang]:not(code):not(pre):not(kbd):not(samp):lang(ja),html [lang]:not(code):not(pre):not(kbd):not(samp):lang(ko),html [lang]:not(code):not(pre):not(kbd):not(samp):lang(zh-CN),html [lang]:not(code):not(pre):not(kbd):not(samp):lang(zh-TW) { + font-family: var(--font-sans-cjk), sans-serif; } body{ @@ -1977,6 +1983,10 @@ body{ color: rgb(28 25 23 / var(--tw-text-opacity, 1)); } +body:lang(ja),body:lang(ko),body:lang(zh-CN),body:lang(zh-TW) { + font-family: var(--font-sans-cjk), sans-serif; +} + body:is(.dark *){ --tw-bg-opacity: 1; background-color: rgb(28 25 23 / var(--tw-bg-opacity, 1)); @@ -1984,37 +1994,21 @@ body:is(.dark *){ color: rgb(250 250 249 / var(--tw-text-opacity, 1)); } -[lang]:lang(ja),[lang]:lang(ko),[lang]:lang(zh-CN),[lang]:lang(zh-TW) { - font-family: "Plus Jakarta Sans", var(--noto-sans-subset), -apple-system, BlinkMacSystemFont, sans-serif; -} - -[lang]{ - font-family: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, sans-serif; -} - /* CJK fonts */ html:lang(ja), body:lang(ja), - .font-default:lang(ja), - .font-sans:lang(ja), [lang="ja"], html:lang(ko), body:lang(ko), - .font-default:lang(ko), - .font-sans:lang(ko), [lang="ko"], html:lang(zh-CN), body:lang(zh-CN), - .font-default:lang(zh-CN), - .font-sans:lang(zh-CN), [lang="zh-CN"], html:lang(zh-TW), body:lang(zh-TW), - .font-default:lang(zh-TW), - .font-sans:lang(zh-TW), [lang="zh-TW"] { - font-family: "Plus Jakarta Sans", var(--noto-sans-subset), -apple-system, BlinkMacSystemFont, sans-serif; + font-family: var(--font-sans-cjk), sans-serif; } /* Ensure syntax highlighting colors are not overridden by body color */ @@ -4737,6 +4731,17 @@ html:lang(ja), will-change: transform; } +.font-default:lang(ja), + .font-sans:lang(ja), + .font-default:lang(ko), + .font-sans:lang(ko), + .font-default:lang(zh-CN), + .font-sans:lang(zh-CN), + .font-default:lang(zh-TW), + .font-sans:lang(zh-TW) { + font-family: var(--font-sans-cjk), sans-serif; +} + .\[ruby-core\:03694\]{ ruby-core: 03694; } diff --git a/stylesheets/tailwind.css b/stylesheets/tailwind.css index d2a19a7b87..0c16b71f14 100644 --- a/stylesheets/tailwind.css +++ b/stylesheets/tailwind.css @@ -19,39 +19,33 @@ @tailwind utilities; @layer base { + /* Fixed: CJK fonts incorrectly applied to elements + with non-CJK lang attribute when page language is CJK */ + html [lang]:not(.font-serif):not(.font-mono):not(.font-sans):not(code):not(pre):not(kbd):not(samp) { + @apply font-default; + } + body { @apply bg-white text-stone-900 text-base leading-5 font-default; @apply dark:bg-stone-900 dark:text-stone-50; } - [lang] { - @apply font-default; - } - /* CJK fonts */ html:lang(ja), body:lang(ja), - .font-default:lang(ja), - .font-sans:lang(ja), [lang="ja"], html:lang(ko), body:lang(ko), - .font-default:lang(ko), - .font-sans:lang(ko), [lang="ko"], html:lang(zh-CN), body:lang(zh-CN), - .font-default:lang(zh-CN), - .font-sans:lang(zh-CN), [lang="zh-CN"], html:lang(zh-TW), body:lang(zh-TW), - .font-default:lang(zh-TW), - .font-sans:lang(zh-TW), [lang="zh-TW"] { - font-family: "Plus Jakarta Sans", var(--noto-sans-subset), -apple-system, BlinkMacSystemFont, sans-serif; + font-family: var(--font-sans-cjk), sans-serif; } - + /* Ensure syntax highlighting colors are not overridden by body color */ .highlight code { color: inherit; @@ -60,3 +54,16 @@ color: var(--color-text-default); } } + +@layer utilities { + .font-default:lang(ja), + .font-sans:lang(ja), + .font-default:lang(ko), + .font-sans:lang(ko), + .font-default:lang(zh-CN), + .font-sans:lang(zh-CN), + .font-default:lang(zh-TW), + .font-sans:lang(zh-TW) { + font-family: var(--font-sans-cjk), sans-serif; + } +} diff --git a/stylesheets/variables.css b/stylesheets/variables.css index cbd293f0ad..d921d7d246 100644 --- a/stylesheets/variables.css +++ b/stylesheets/variables.css @@ -69,6 +69,9 @@ /* Icon colors */ --color-icon-default: #78716c; + + /* CJK font stack */ + --font-sans-cjk: "Plus Jakarta Sans", var(--noto-sans-subset), -apple-system, BlinkMacSystemFont; } /* Dark mode */