/* 所有位于标题+空行段落后面的嵌入块,隐藏这些嵌入块中前面没有标题容器的标题 */
[class^="el-h"] + .el-p .internal-embed[data-type="heading"] .markdown-embed-content [class^="el-h"]:not([class^="el-h"] ~ [class^="el-h"]):not(:is(.el-ul, .el-ol) [class^="el-h"]) :is(h1, h2, h3, h4, h5, h6) {
display: none !important;
/*border: 2px solid #28a745 !important;*/
}
经过将近10个小时?努力与调试,不断与AI的对话,终于达到了我想要的效果
隐藏被引用的笔记的最高一级的标题
比如:
我引用了一篇笔记,这篇笔记的最高标题是 一级标题,那就隐藏这个一级标题,但显示一级标题下一行开始的所有内容
如果我引用了一篇笔记其中的某一个二级标题及其以下的所有内容,那就仅隐藏这个二级标题,但显示这个二级标题下一行开始的所有内容
如果我引用了一篇笔记其中的某一个三级标题及其以下的所有内容,那就仅隐藏这个三级标题,但显示这个三级标题下一行开始的所有内容
以此类推
附上css:
.internal-embed.is-loaded:not([alt="#"]) .markdown-embed-heading .markdown-preview-section > div:nth-child(2) {
right: 12px;
}
.internal-embed.is-loaded:not([alt="#"]) .obsidian-metatable {
display: none;
}
.internal-embed.is-loaded:not([alt="#"]):not([src*="#^"]) .embed-title:empty + .markdown-embed-content .markdown-preview-section > div:nth-child(3) {
position: absolute;
right: 24px;
top: 8px;
z-index: 99;
opacity: 0;
transition: opacity 0.15s ease-in-out;
}
.internal-embed.is-loaded:not([alt="#"]):not([src*="#^"]) .embed-title:empty + .markdown-embed-content .markdown-preview-section > div:nth-child(3) * {
font-size: 1rem;
cursor: pointer;
line-height: 1rem;
}
.internal-embed.is-loaded:not([alt="#"]) .markdown-embed-title {
opacity: 0;
position: absolute;
z-index: 99;
width: fit-content;
right: 28px;
left: unset;
font-size: 1rem;
top: 4px;
line-height: 28px;
height: 28px;
padding: 0 8px;
transition: opacity 0.15s ease-in-out;
cursor: pointer;
}
.internal-embed.is-loaded:not([alt="#"]):hover .embed-title:empty + .markdown-embed-content .markdown-preview-section > div:nth-child(3) {
opacity: 1;
}
.internal-embed.is-loaded:not([alt="#"]):hover :is(.markdown-embed-title, .markdown-embed-link, .file-embed-link:hover svg) {
opacity: 1;
color: var(--text-normal);
}
.internal-embed.is-loaded:not([alt="#"]) :is(.markdown-embed, .file-embed) .markdown-preview-view {
padding: calc(var(--font-text-size, 16px) * 1.5);
padding-bottom: calc(var(--font-text-size, 16px) * 1.2);
}
/* 兼容性调整,确保在不同主题下都能正常显示 */
.markdown-preview-view .internal-embed {
position: relative;
}
.markdown-embed-title {
background: var(--background-primary, #ffffff);
border-radius: 4px;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
/* 暗色模式适配 */
.theme-dark .markdown-embed-title {
background: var(--background-primary, #1e1e1e);
}
@1058052807 恭喜。稍微提醒 #28 这样不支持打印,若你需要在打印时也保持一致的隐藏效果。测试于 1.11.4 沙箱。
不过能实现自己想要的效果就好。
另,如果内容相同,可考虑善用链接,回答者可以共享信息,提问者若有补充或修改需求,也只需更新一处。这次可能是顺着我在其他话题的引用挨个问了。我重新组织一下。