From e4872d19c042a005c6e9a9b6e96bdf2051918c63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mike=20Schw=C3=B6rer?= Date: Sun, 8 Feb 2026 00:20:39 +0100 Subject: [PATCH] css compiler fixes --- data/css_compress/compress.py | 8 +++++++- www/data/css/styles.css | 10 ++++++---- www/data/css/styles.min.css | 6 +++--- www/data/css/styles_about.scss | 11 ++++++----- 4 files changed, 22 insertions(+), 13 deletions(-) diff --git a/data/css_compress/compress.py b/data/css_compress/compress.py index fd366fe..14eaff0 100644 --- a/data/css_compress/compress.py +++ b/data/css_compress/compress.py @@ -149,7 +149,7 @@ for i in range(len(data)): copen = findnext(data, i, '{') cclose = findclose(data, copen) - if countnl(data, copen, cclose) == 0: continue; + if countnl(data, copen, cclose) == 0: continue ins.append((copen + 1, '\n\t')) for i2 in range(copen + 1, cclose): @@ -162,6 +162,12 @@ for i in range(len(data)): for (l, c) in reversed(ins): data = data[:l] + c + data[l:] +print('======== MORE ========') + +# fixes `calc(100%+5px)` stuff +data = re.compile(r"calc\(([^)]+)\)").sub(lambda m: "calc(" + re.sub(r"(?<=[^\s])([\+\-\*/])(?=[^\s])", " \\1 ", m.group(1)) + ")", data) + + print('') print('') diff --git a/www/data/css/styles.css b/www/data/css/styles.css index 9c85fcd..410d13a 100644 --- a/www/data/css/styles.css +++ b/www/data/css/styles.css @@ -824,6 +824,8 @@ html, body { border: 1px solid #000; display: grid; gap: 8px; +} +.about_ehr_container { /* Level: 4 */ } @media (min-device-width:1200px) { @@ -831,7 +833,7 @@ html, body { grid-template-columns: repeat(6, 1fr); } } -.about_ehr_container .month-grid { +.about_ehr_container { /* Level: 3 */ } @media (min-device-width:992px) and (max-device-width:1199px) { @@ -839,7 +841,7 @@ html, body { grid-template-columns: repeat(4, 1fr); } } -.about_ehr_container .month-grid { +.about_ehr_container { /* Level: 2 */ } @media (min-device-width:851px) and (max-device-width:991px) { @@ -847,7 +849,7 @@ html, body { grid-template-columns: repeat(4, 1fr); } } -.about_ehr_container .month-grid { +.about_ehr_container { /* Level: 1 */ } @media (min-device-width:768px) and (max-device-width:850px) { @@ -855,7 +857,7 @@ html, body { grid-template-columns: repeat(3, 1fr); } } -.about_ehr_container .month-grid { +.about_ehr_container { /* Level: 0 */ } @media (max-device-width:767px) { diff --git a/www/data/css/styles.min.css b/www/data/css/styles.min.css index 921b8e4..b7ee885 100644 --- a/www/data/css/styles.min.css +++ b/www/data/css/styles.min.css @@ -177,8 +177,8 @@ html,body{margin:0;padding:0;height:100%} .about_ehr_container .book-item .title-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,0.8));color:white;font-size:2px;padding:4px 1px 1px 1px;transition:opacity .2s ease-in-out;white-space:wrap;opacity:0} .about_ehr_container .book-item img{aspect-ratio:var(--preview-aspect-ratio)} .about_ehr_container .book-item.no-cover{background:linear-gradient(135deg,#667eea 0,#764ba2 100%);display:flex;align-items:center;justify-content:center;font-size:10px;color:white;text-align:center;padding:4px} -.about_ehr_container .rating-overlay{position:absolute;bottom:calc(100%+0.5px);right:0;width:100%;height:2px;background-size:contain;background-repeat:no-repeat;background-position:right bottom;opacity:0} -.about_ehr_container .wordcount-overlay{position:absolute;top:calc(100%+0.5px);left:0;right:0;padding:1px;font-size:2px;text-align:center;color:white;background:rgba(0,0,0,0.7);opacity:0} +.about_ehr_container .rating-overlay{position:absolute;bottom:calc(100% + 0.5px);right:0;width:100%;height:2px;background-size:contain;background-repeat:no-repeat;background-position:right bottom;opacity:0} +.about_ehr_container .wordcount-overlay{position:absolute;top:calc(100% + 0.5px);left:0;right:0;padding:1px;font-size:2px;text-align:center;color:white;background:rgba(0,0,0,0.7);opacity:0} .about_ehr_container .rating-overlay[data-count="1.0"]{background-image:url("/data/images/ehr/stars_1.0.png")} .about_ehr_container .rating-overlay[data-count="1.5"]{background-image:url("/data/images/ehr/stars_1.5.png")} .about_ehr_container .rating-overlay[data-count="2.0"]{background-image:url("/data/images/ehr/stars_2.0.png")} @@ -188,7 +188,7 @@ html,body{margin:0;padding:0;height:100%} .about_ehr_container .rating-overlay[data-count="4.0"]{background-image:url("/data/images/ehr/stars_4.0.png")} .about_ehr_container .rating-overlay[data-count="4.5"]{background-image:url("/data/images/ehr/stars_4.5.png")} .about_ehr_container .rating-overlay[data-count="5.0"]{background-image:url("/data/images/ehr/stars_5.0.png")} -.about_ehr_container .book-item:hover .book-container{transform:scale(8);z-index:10;box-shadow:0 4px 12px rgba(0,0,0,0.3);background-color:#FFF;position:absolute;width:32px;height:calc(32px / var(--img-aspect-ratio));left:calc(50% - 16px);top:calc(50% - 16px / var(--img-aspect-ratio))} +.about_ehr_container .book-item:hover .book-container{transform:scale(8);z-index:10;box-shadow:0 4px 12px rgba(0,0,0,0.3);background-color:#FFF;position:absolute;width:32px;height:calc(32px / var( - - img - aspect - ratio));left:calc(50% - 16px);top:calc(50% - 16px / var( - - img - aspect - ratio))} .about_ehr_container .book-item:hover .title-overlay{opacity:1} .about_ehr_container .book-item:hover .chapter-overlay{opacity:1} .about_ehr_container .book-item:hover .wordcount-overlay{opacity:1} diff --git a/www/data/css/styles_about.scss b/www/data/css/styles_about.scss index a22e58e..cbae9fe 100644 --- a/www/data/css/styles_about.scss +++ b/www/data/css/styles_about.scss @@ -219,13 +219,14 @@ display: grid; gap: 8px; - @include rdmedia(4) { grid-template-columns: repeat(6, 1fr); } - @include rdmedia(3) { grid-template-columns: repeat(4, 1fr); } - @include rdmedia(2) { grid-template-columns: repeat(4, 1fr); } - @include rdmedia(1) { grid-template-columns: repeat(3, 1fr); } - @include rdmedia(0) { grid-template-columns: repeat(1, 1fr); } } + @include rdmedia(4) { .month-grid { grid-template-columns: repeat(6, 1fr); } } + @include rdmedia(3) { .month-grid { grid-template-columns: repeat(4, 1fr); } } + @include rdmedia(2) { .month-grid { grid-template-columns: repeat(4, 1fr); } } + @include rdmedia(1) { .month-grid { grid-template-columns: repeat(3, 1fr); } } + @include rdmedia(0) { .month-grid { grid-template-columns: repeat(1, 1fr); } } + .month-cell { min-height: 180px;