11: root {
2- --admon-def -fg : # 1e88e5 ; --admon-def -bg : rgba (30 , 136 , 229 , .08 );
3- --admon-lemma -fg : # 8e24aa ; --admon-lemma -bg : rgba (142 , 36 , 170 , .08 );
4- --admon-api -fg : # 00897b ; --admon-api -bg : rgba (0 , 137 , 123 , .08 );
2+ --admon-blue -fg : # 1e88e5 ; --admon-blue -bg : rgba (30 , 136 , 229 , .08 );
3+ --admon-purple -fg : # 8e24aa ; --admon-purple -bg : rgba (142 , 36 , 170 , .08 );
4+ --admon-green -fg : # 00897b ; --admon-green -bg : rgba (0 , 137 , 123 , .08 );
55}
66
77/* 容器:圆角 + 顶部留出角标空间 */
8- .md-typeset .admonition .def ,
9- .md-typeset .admonition .lemma ,
10- .md-typeset .admonition .api {
8+ .md-typeset .admonition .blue ,
9+ .md-typeset .admonition .purple ,
10+ .md-typeset .admonition .green {
1111 position : relative; border : 1px solid var (--md-default-fg-color--lighter );
12- border-radius : 12px ; padding : 1.2rem 1 rem 1 rem ; margin-top : 1rem ;
12+ border-radius : 12px ; padding : 0.3 rem 1.2rem 0.3 rem ; margin-top : 1rem ;
1313 background : var (--md-default-bg-color );
1414}
1515
1616/* 去掉默认小图标,避免挡住“胶囊” */
17- .md-typeset .admonition .def > .admonition-title ::before ,
18- .md-typeset .admonition .lemma > .admonition-title ::before ,
19- .md-typeset .admonition .api > .admonition-title ::before { content : none; }
17+ .md-typeset .admonition .blue > .admonition-title ::before ,
18+ .md-typeset .admonition .purple > .admonition-title ::before ,
19+ .md-typeset .admonition .green > .admonition-title ::before { content : none; }
2020
2121/* 标题=左上角胶囊 */
22- .md-typeset .admonition .def > .admonition-title ,
23- .md-typeset .admonition .lemma > .admonition-title ,
24- .md-typeset .admonition .api > .admonition-title {
22+ .md-typeset .admonition .blue > .admonition-title ,
23+ .md-typeset .admonition .purple > .admonition-title ,
24+ .md-typeset .admonition .green > .admonition-title {
2525 position : absolute; top : -0.9rem ; left : 1rem ; margin : 0 ; padding : .1rem .6rem ;
2626 border-radius : 999px ; font-weight : 700 ; font-size : .85rem ;
2727 background : var (--md-default-bg-color ); border : 1px solid currentColor;
2828}
2929
3030/* 配色 */
31- .md-typeset .admonition .def { border-color : var (--admon-def -fg ); box-shadow : 0 0 0 1px var (--admon-def -bg ) inset;}
32- .md-typeset .admonition .def > .admonition-title { color : var (--admon-def -fg ); }
31+ .md-typeset .admonition .blue { border-color : var (--admon-blue -fg ); box-shadow : 0 0 0 1px var (--admon-blue -bg ) inset;}
32+ .md-typeset .admonition .blue > .admonition-title { color : var (--admon-blue -fg ); }
3333
34- .md-typeset .admonition .lemma { border-color : var (--admon-lemma -fg ); box-shadow : 0 0 0 1px var (--admon-lemma -bg ) inset;}
35- .md-typeset .admonition .lemma > .admonition-title { color : var (--admon-lemma -fg ); }
34+ .md-typeset .admonition .purple { border-color : var (--admon-purple -fg ); box-shadow : 0 0 0 1px var (--admon-purple -bg ) inset;}
35+ .md-typeset .admonition .purple > .admonition-title { color : var (--admon-purple -fg ); }
3636
37- .md-typeset .admonition .api { border-color : var (--admon-api-fg ); box-shadow : 0 0 0 1px var (--admon-api-bg ) inset;}
38- .md-typeset .admonition .api > .admonition-title { color : var (--admon-api-fg ); }
37+ .md-typeset .admonition .green { border-color : var (--admon-green-fg ); box-shadow : 0 0 0 1px var (--admon-green-bg ) inset;}
38+ .md-typeset .admonition .green > .admonition-title { color : var (--admon-green-fg ); }
39+
40+
41+ /* ============================
42+ Admonition grid — 强制左右两栏对齐
43+ 将此段放到自定义 CSS 的最底部
44+ ============================ */
45+
46+ /* 确保 grid 样式被加载并且是两栏 */
47+ .md-typeset .admonition .grid .grid-cols-2 ,
48+ .md-typeset .admonition .admonition-content .grid .grid-cols-2 {
49+ display : grid !important ;
50+ grid-template-columns : repeat (2 , minmax (0 , 1fr )) !important ;
51+ gap : 1rem !important ;
52+ grid-auto-rows : auto !important ;
53+ align-items : start !important ;
54+ align-content : start !important ;
55+ width : 100% !important ;
56+ }
57+
58+ /* 所有直接子项:从顶部开始,并使用 flex 列布局以保证内部元素布局一致 */
59+ .md-typeset .admonition .grid .grid-cols-2 > * {
60+ box-sizing : border-box !important ;
61+ grid-row : 1 !important ; /* 强制放在同一行 */
62+ align-self : start !important ; /* 顶部对齐 */
63+ display : flex !important ;
64+ flex-direction : column !important ;
65+ justify-content : flex-start !important ;
66+ width : 100% !important ;
67+ margin : 0 !important ;
68+ padding : 0 !important ; /* 子项内部我们下面再单独加 padding */
69+ }
70+
71+ /* 明确指定第 1 / 第 2 子项分别占用第 1 / 第 2 列(避免自动排布导致换行)*/
72+ .md-typeset .admonition .grid .grid-cols-2 > * : nth-child (1 ) {
73+ grid-column : 1 / 2 !important ;
74+ }
75+ .md-typeset .admonition .grid .grid-cols-2 > * : nth-child (2 ) {
76+ grid-column : 2 / 3 !important ;
77+ }
78+
79+ /* 如果子项被额外 wrapper(比如 .admonition-content)包了一层,也确保那一层占满单元格 */
80+ .md-typeset .admonition .grid .grid-cols-2 > * > .admonition-content ,
81+ .md-typeset .admonition .grid .grid-cols-2 > * > .md-typeset {
82+ width : 100% !important ;
83+ display : flex !important ;
84+ flex-direction : column !important ;
85+ }
86+
87+ /* 实际用于显示内容的容器(避免代码块 margin 带来的错位) */
88+ .md-typeset .admonition .grid .grid-cols-2 > * {
89+ padding : 0.3rem !important ;
90+ background : var (--md-code-bg-color , # f6f6f6 ) !important ;
91+ border-radius : 0.35rem !important ;
92+ }
93+
94+ /* 移除 pre 的默认外边距以避免视觉漂移 */
95+ .md-typeset .admonition .grid .grid-cols-2 pre {
96+ margin : 0 !important ;
97+ padding : 0.3rem !important ; /* 需要的话保留内边距 */
98+ }
99+
100+ /* 可选:在第二列左侧加一条竖线分隔(像对照表)
101+ .md-typeset .admonition .grid.grid-cols-2 > *:nth-child(2) {
102+ border-left: 1px solid var(--md-default-fg-color--light) !important;
103+ padding-left: 1rem !important;
104+ } */
105+
106+ /* 调试用高亮(确认选中元素),测试完请删除或注释掉 */
107+ .md-typeset .admonition .grid .grid-cols-2 .debug {
108+ outline : 2px dashed rgba (0 , 0 , 0 , 0.06 );
109+ }
0 commit comments