是的,我一读到这句话就这么想了。我也会看看你的网站!我实际上是从 Air 主题开始的,并且用 CSS 等进行了相当多的自定义,但与我现在的 Air 主题相比,我觉得它太“基础”了,这对我来说很奇怪,因为我通常喜欢极简主义,哈哈。
当 @Lilly、@bryce 和 @omarfilip 说它很慢时,那是在我自己的特定夜晚时间,然后大约在服务器托管的同一时间。如果现在不麻烦的话,我想请你 @Heliosurge,以及 @daemon 和 @merefield 在 12 小时后,当其他人说它很慢的时候,如果你不忙并且醒着,可以去看看吗,哈哈?我非常想知道这是否是时间问题。
听到这个真是太棒了!尤其是在服务器托管地遥远的另一端。
太棒了!!你还有其他反馈/建议吗?
1 个赞
bryce
(Bryce Huhtala)
22
我刚试了一下,现在加载几乎是即时的。起初我以为只是从内存缓存加载的,但似乎不是。
2 个赞
啊,好的。是的,奇怪。这似乎指向一个与时间相关的问题。考虑到服务器托管地的时间以及那个小时大多数人可能都在线,这说得通。不过……像百万/十亿美元级别的公司应该不会有这个问题吧,不管是什么时间?我的意思是,我曾浏览过一些大型网站,它们有时会显得很慢,但这比任何事情都罕见。
MikeNolan
(Mike Nolan)
24
对我来说,在内布拉斯加州使用 500mb 服务加载速度也非常快。
1 个赞
对我来说,页面加载很快。
看起来不错。
关于 Discourse,我不太喜欢标签的样式(纯属个人意见):
- 它是标签;我不期望它们在这里占据整个宽度。
- 它在视觉上吸引了你很多注意力。
- 对比度问题——它不是超级易读。
随机示例:
祝你好运!
2 个赞
感谢您的反馈!
是的,我实际上尝试过调整标签的宽度,但无法弄清楚如何在其调整大小后将其居中。颜色方面,我找不到更好的颜色来搭配浅色和深色模式。如果我在浅色模式下使框变浅,它在深色模式下会太亮并导致相同的问题。
例如,如果我检查元素标签,并将 max-width 属性更改为 40%,它在视觉上会更好,但我无法弄清楚如何将整个元素居中,因为每次我尝试时,它只会移动文本,而不是它后面的框。
bryce
(Bryce Huhtala)
29
要居中这些标签,您可以使用 flexbox 属性。这些标签位于一个父容器内,该父容器已设置为 display: flex。
Flexbox 可以非常轻松地控制子元素在容器内的排列方式。开发者工具中有一个方便的功能,您可以点击 display: flex 旁边的小图标,它会弹出一组控件,以便您查看哪个控件能产生期望的效果。
在这种情况下,justify-content: center 可以实现此目的:
请注意,它也适用于多个标签:
如果您想了解更多细节,这里 是一个很好的经典 flexbox 教程。它是您 CSS 工具箱中非常有用的工具 
3 个赞
哦,太感谢你了!是的,显示两个标签比居中显示一个标签看起来不那么尴尬,但我说实话,我没看到很多人在大多数帖子中使用多个标签。嗯……可能需要想办法用 CSS 之类的方法在那里显示标签,然后显示主题/帖子的其他部分,这样就有两样东西了。或者也许完全隐藏它,但唉。
或者更好的是,我可以用它替换类别吗?
我建议您使用 Discourse 的 CSS 颜色变量,因为它们与暗黑模式的兼容性更好。(您可以检查任何元素并向下滚动)
居中:编辑:Bryce 已经回答了这个问题!
.discourse-tags {
justify-content: center;
}
color: var(--secondary-low) !important;
background: var(--blend-primary-secondary-5) !important;
您还可以使用 dark-light-choose(<lightcolor>, <darkcolor>) 函数来定义浅色和深色,这样在设置了暗黑模式或未设置时就会使用正确的颜色。
4 个赞
嗯,我这样做错了吗?当我将此粘贴到“检查元素”中时,我得到:
background: dark-light-choose(#f0f2f5, #3a3b3c) !important;
1 个赞
这是 Discourse 核心中可用的 SCSS 函数。您需要在主题 CSS 中使用它,以便进行处理。如果直接在浏览器中使用,它将无法工作。
1 个赞
Heliosurge
(Dan DeMontmorency)
34
您的网站加载速度仍然很快。只看到很短的时间。
单点添加组件很棒。你比我领先,因为我还在学习代码方面。在此之前很久,我只接触过基础知识;qbasic 和旧的 turbo Pascal。但我正在努力。
1 个赞
嗯,好的,所以我的 .scss 文件中有:
.discourse-tags {
display: flex;
margin: 1em 0 0 0;
/* justify-content: center; */
a {
display: inherit;
flex: 1 0 auto;
justify-content: center;
max-width: 35%;
//line-height: var(--line-height-small);
line-height: 1.1rem;
border: 0.5em solid transparent;
/* color: #000000 !important; */
color: var(--secondary-low) !important;
background: dark-light-choose(#f0f2f5, #3a3b3c) !important;
重点是最后两行。所以,看起来对于浅色和深色模式,它都停留在 #f0f2f5 颜色而不是在深色模式下切换到 3a3b3c 颜色。有什么想法为什么会这样吗?
在“检查元素”中,该属性仍然是:
background: #f0f2f5 !important;
我什么都试过了,包括上面你链接的 URL,并尝试将它们设为 $tagbglight 和 $tagbgdark 并定义它们,但仍然没有成功。
dark-light-choose('#f0f2f5', '#3a3b3c') 得到的结果是:
这和我之前得到的结果差不多。
注意:检查元素显示的是双引号。在代码中,我像你一样使用了单引号。
bryce
(Bryce Huhtala)
38
嗯,既然您在最终结果中得到了引号,也许可以试试这个:
dark-light-choose(unquote(\"#f0f2f5\"), unquote(\"#3a3b3c\"))
不过,我不确定这是否能帮助它选择正确的颜色!
这会移除引号,但在切换模式时,背景色仍然是 #f0f2f5:#f0f2f5
bryce
(Bryce Huhtala)
40
这很奇怪。看起来函数本身正在比较主色和次色的亮度。我不确定为什么它不起作用。
@function dark-light-choose($light-theme-result, $dark-theme-result) {
@if is-light-color-scheme() {
@return $light-theme-result;
} @else {
@return $dark-theme-result;
}
}
@function is-light-color-scheme() {
@if dc-color-brightness($primary) < dc-color-brightness($secondary) {
@return true;
} @else {
@return false;
}
}
我认为您需要在 color_definitions.scss 中定义一个 CSS 变量。
例如:
:root {
--bg-custom: dark-light-choose(#f0f2f5, #3a3b3c);
}
然后您可以使用:
background: var(--bg-custom) !important;