两个部分的最低宽度,请问有 CSS 代码可以控制吗?
-
思源笔记
28446 引用 • 119790 回帖
思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。
融合块、大纲和双向链接,重构你的思维。
-
代码片段
285 引用 • 1988 回帖
代码片段分为 CSS 与 JS 两种代码,添加在 [设置 - 外观 - 代码片段] 中,这些代码会在思源笔记加载时自动执行,用于改善笔记的样式或功能。
用户在该标签下分享代码片段时需在帖子标题前添加
[css]或[js]用于区分代码片段类型。 -
Q&A
11155 引用 • 50666 回帖 • 52 关注
提问之前请先看《提问的智慧》,好的问题比好的答案更有价值。
相关帖子
-
JeffreyChen •订阅者 付费者 支持者 捐赠者 先知 恶龙
.file-tree { flex: 1 0 auto; } :is(.layout__dockl, .layout__dockr):is([style*="width: 232px"], [style*="width: 320px"]) { min-width: 150px; max-width: 150px; }
-
.file-tree { flex: 1 0 auto; } :is(.layout__dockl, .layout__dockr):is([style*="width: 232px"], [style*="width: 320px"]) { min-width: 150px; max-width: 150px; }2 回复 -
js 方案
@JeffreyChen 我测试下来发现 css 版不够稳定,经常不生效,我用 js 写了一版
// 自定义侧边栏最小宽度限制 setTimeout(() => { // 设置侧边栏最小宽度 const minWidth = 100; if (!!document.getElementById("sidebar")) return; // 手机版返回 const dockl = document.querySelector('.layout__dockl'); const resizerl = getNextResizeLr(dockl); const dockr = document.querySelector('.layout__dockr'); const resizerr = getPreviousResizeLr(dockr); let isDragging = false, dockType = ''; // 鼠标按下开始拖动 resizerl.addEventListener('mousedown', (e) => { isDragging = true; dockType = 'l'; }); resizerr.addEventListener('mousedown', (e) => { isDragging = true; dockType = 'r'; }); // 鼠标移动,调整宽度 document.addEventListener('mousemove', (e) => { if (!isDragging || !dockType) return; const dockEl = dockType === 'l' ? dockl : dockr; // 计算鼠标相对于页面左侧的位置 const newWidth = dockType === 'l' ? e.clientX - dockEl.getBoundingClientRect().left : dockEl.getBoundingClientRect().right - e.clientX; // 设置最小和最大宽度限制(可选)240之外用思源自带拖动即可 if (newWidth >= minWidth && newWidth < 240) { dockEl.style.width = `${newWidth}px`; } }); // 鼠标释放,结束拖动 document.addEventListener('mouseup', () => { if (isDragging) { isDragging = false; dockType = ''; } }); function getNextResizeLr(el) { let sibling = el.nextElementSibling; while (sibling) { if (sibling.matches('.layout__resize--lr')) { return sibling; } sibling = sibling.nextElementSibling; } return null; } function getPreviousResizeLr(el) { let sibling = el.previousElementSibling; while (sibling) { if (sibling.matches('.layout__resize--lr')) { return sibling; } sibling = sibling.previousElementSibling; } return null; // 没找到 } }, 2000);1 回复 -
大佬,我还有个问题,不开新帖子了,就在这里问了,
思源笔记中图片铺不满块,图片的四边与块的范围的剩余空间完全不一样,如果是将他与其他的块(如:引述块)进行组合,就会出现视觉上的不和谐,总感觉插入了图片的块,与其他的不一样大小,
有办法让图片直接铺满块吗?四边的距离无限接近 0 的那种,
还有就是一个建议,组合块,是不是加一个开启轮廓的功能,这样就更好地分别有那些块组合在了一起,下图是借助了“自定义块样式插件”实现的效果。
1 回复 -
