>[!center] 标题
>正文
>正文
加上这段css
.callout[data-callout=center] {
text-align: center;
}
.callout[data-callout=center] .callout-title {
justify-content: center;
}
>[!center] 标题
>正文
>正文
.callout[data-callout=center] {
text-align: center;
}
.callout[data-callout=center] .callout-title {
justify-content: center;
}
看这个是不是所有标题下面正文都居中了?我只需要h6标题内的正文居中。我回去试试看,正在回家路上
楼上的callout解法可能并不像你想的那样,可以把所有h6标题下的内容都居中;它是通过obsidian里面一个叫callout的功能,实现callout内文本居中,如果你想让标题是h6,正常写就可以。
>[!center] ###### 标题
>正文
>正文
不过我猜你想实现的效果是这个callout的背景和文中其他内容融合,也就是标题栏没有icon,块内没有背景,那么css修改成这样就行:
/*---设定一个叫center的callout---*/
.callout[data-callout="center"] {
--callout-color:transparent;/*无背景*/
text-align: center;/*文本居中*/
border: none;/*无框线*/
}
.callout[data-callout="center"] .callout-title {
justify-content: center;/*标题居中*/
}
.callout[data-callout="center"] .callout-icon{
display: none;/*去除icon*/
}
使用callout的好处是,它是obsidian原生的功能,正常导出pdf一般不会影响外观。
特别感谢,我刚刚也百度了一下什么是 callout,我觉得这个功能解决问题也不错。非常感谢您。我现在还不是很明白怎么用。等于用你这段代码定义了一个样式居中的块,我写到对白的时候就用这个功能来写居中的对白就可以。 我现在只要在编辑器里面输入一个>符号,然后加上【!center】就可以是吗?能不能简化到只有一个字母就能启用呢
我刚刚尝试了,蛮好的。就是很多地方都要写对白,这个命令要打七八个字符。不能定义成一个 d 字吗?我感觉您解决了用 obs 写剧本的朋友一个大问题。值得在编剧们中间推广
我修改了一下,我感觉我知道怎么用 callout 功能了。
/*---设定一个叫d的callout用来表示要写对白并居中了意思是dialogue---*/
.callout[data-callout="d"] {
--callout-color:transparent;/*无背景*/
text-align: center;/*文本居中*/
border: none;/*无框线*/
}
.callout[data-callout="d"] .callout-title {
justify-content: center;/*标题居中*/
}
.callout[data-callout="d"] .callout-icon{
display: none;/*去除icon*/
}
谨代表所有使用 obsidian 的编剧感谢您和几位老师的鼎力相助!希望这个帖子能帮到所有编剧朋友。
最开始的需求:六级标题下一个居中是可以勉强实现的,下面的代码仅在阅读模式下生效
h6{
text-align: center;
}
div:has(h6)+div{
text-align: center;
}
浏览论坛的时候,看到了一个非常适合题主的帖子,专门给编剧写剧本的css片段和插件,所以分享一下。
原帖是英文论贴那边的:Screenwriting CSS Snippet:用 Markdown 写作,导出为排版一致的剧本
这是实现的效果:
那位作者非常精细,针对每个层级的标题都做了样式
Header 1 - Scene Heading/Shot 1级标题 - 场景标题/镜头
Header 2 - Character Name 2级标题 -角色名
Header 3 - Parenthetical 3级标题 - 旁注
Header 4 - Transition 4级标题 - 转场
Header 5 - Act 5级标题 -幕
Highlight - Underline 突出 - 下划线
Horizontal Divider (hr) - Page Break 水平分隔符 (hr) -分页符
以及,这位作者后来还更新了代码pro代码,
PRO Screenwriting css:用Markdown写剧本, 实现Fountain插件的格式、Canvas索引卡片样式,导出pdf版式
非常感谢,我去研究一下看看。不过中文剧本的板式,有一些跟海外英文版的区别,不过也没有说就一定是哪一种就是标准。怎么写的都有。但是最基本的一个通用规则就是对白的安排是居中。
您好,我进入后面那个更新的帖子里面,是新版本被做成了插件是吗?我点不进去,不能下载。但是前一个链接的帖子,用css的样式的,应该可以试试,我不是特别懂代码,我感觉意思是在每次写剧本前,写一段代码,然后就可以启用这个css的样式,这个css的样式根据不同标题的特性是专门针对剧本写作设计的。是吧
没搞明白,我把上面你提到的第一个帖子里面的css代码加入到obsidian里面,然后选择启用,然后是在正文开始使用—三个短横,结果出来要我选cssclass的属性,我写了screenplay的属性,但是写作的时候不起作用。
两个都是css片段,第二个增加了一些功能,包括canvas页面的卡片功能等;不过第一个应该就够用。
使用方法就是如你所说的步骤,我试了一下在我的obsidian里面是可以用的。
你或许可以重启一下obsidian,或者每个步骤都再检查一遍?
我找到地方输入这个东西了。去源码视图,就可以输入三根小横杠,然后写
---
cssclass: screenplay
---
但是并没有能有效果
上面的 cssclasses
就是