本帖最后由 Cat_Anchor 于 2026-2-25 18:42 编辑
████████████████ ████████████████ ████████████████ ████████████████ ████████████████ ████████████████ ████████████████ ████████████████ ████████████████ ████████████████ ████████████████ ████████████████ ████████████████ ████████████████ ████████████████ ████████████████
上面的不是图片!
我一直很好奇 BBCode 的能力边界!所以……
我们来做一些测试吧 ヾ(@^▽^@)ノ
粗体、斜体、下划线、删除线
不同设备字体不一样,我得先统一一下字体。Times New Roman 可能不支持回退地渲染中文,所以我在进入测试区域之前把项目说清楚。
早上起来翻译更新日志的时候,我发现有些地方套了两层加粗。这与一层加粗有什么不同?另外,不同标签的嵌套效果如何?还有一堆正常人会想到的边界情况……
Nested tags testing.
No Bold. Bold * 1 Bold * 2 Bold * 3
No Italic. Italic * 1 Italic * 2 Italic * 3
No Underline. Underline * 1 Underline * 2 Underline * 3
No Strike.
Strike * 1
Strike * 2
Strike * 3
Multiple Nested Tags Testing.
Bold + Italic Italic + Bold
Underline + Strike Bold + Italic + Underline
Strike + Underline + Italic Outer Bold, Inner Italic + Bold
4 Nested Tags.
Cross Tags Testing.
text text
Builtin conclusion: Unclosed tags will cause its scope to continue to the end.
Redundant Enclosing Tags Testing.
Bold but 1 more enclosing tag. Italic but 2 more enclosing tags.
Empty Tags Testing.
Bold.
Italic & Underline.
Bold nested Italic.
Bold with newline.
Underline with 2 whitespaces.
Tags Combination Testing.
What an adorable kitten! It's so cute!
Bold, then Italic, now Bold again.
Character Rendering Testing.
These are likely to fail. 中文中文! 中文斜体
猫猫实在是太 adorable 啦! ©®™€£¥§¶ ❄☀★♫
Escape Support Testing.
These are likely to fail.
\This is not Bold!\
[b\]This is not Bold![/b\]
\[b\]This is not Bold!\[/b\]
\[\b\]This is not Bold!\[\/\b\] What if I place [content] here?
[zxsq-anti-bbcode-b]This is how to use it.[/zxsq-anti-bbcode-b]
颜色、背景颜色、上标、下标
预设颜色(应该不区分大小写) 红色文字 Red 绿色文字 GREEN 蓝色文字 blue 橙色文字 OrAnGe
十六进制颜色 红色 FF0000 绿色 00ff00 深蓝 002244 短十六进制 AF2
RGBA 格式 不透明红(255,0,0,1)
[color=rgba(255,0,0,0.5)]半透明红(255,0,0,0.5)
[color=rgba(255, 0, 0, 0.5)]半透明红(255, 0, 0, 0.5)
[color=rgba(255, 0, 0, 0.50)]半透明红(255, 0, 0, 0.50) 不透明绿(100,200,50,1)
[color=rgba(100,200,50,0.8)]半透明绿(100,200,50,0.8) 不透明蓝(0,0,255,1)
[color=rgba(0,0,255,0.2)]半透明蓝(0,0,255,0.2) 完全透明(255,255,255,0)(这里有完全透明的测试)
[color=]空参数
[color= ]参数为空格
[color=InvalidColor!]无效颜色名称预设 无效十六进制格式 超出范围 (300,0,0,1) 缺少不透明度 (255,0,0) 不透明度超出 0 - 1 (255,0,0,2)
外层内层外层 绿色上标 紫色下标 蓝字黄底
红绿蓝 多余 1 个闭合标签 特殊符号 ©®™€
红底文字 Red 黄底 yellow 品红底 Magenta 红底 FF0000 绿底 00FF00 自定义底 123456
[backcolor=rgba(255,0,0,0.5)]不支持 RGBA 半透明底 (255,0,0,0.5)
[backcolor=]空参数 无效颜色名 无效十六进制
灰色上标 下标青底
红绿 多余 1 个闭合标签
普通文字上标普通文字 单独上标
x2 + y2 = z2
注①
外层[sup]内层外层[/sup](预期内层不生效)
第一层[sup]第二层[sup]第三层[/sup][/sup]
红色上标 黄底上标
H2O 和 E=mc2(相邻) 上标和下标 上标下标下标上标
空内容 [/sup]
[sup] (空格) 多余 1 个闭合标签[/sup]
H2O
C6H12O6 下标文字
外层[sub]内层外层[/sub](预期内层不生效) 第一[sub]第二[sub]第三[/sub][/sub]
蓝色下标 绿底下标
A1 和 B2
嵌套尝试:下标上标
空内容 [/sub]
[sub] (空格) 多余 1 个闭合标签[/sub] ©®™
红字黄底红字上标继续正常颜色 然后下标结束 红色上标错误闭合 红蓝底上下绿
大小、飞行、对齐、浮动
小号字 大号字 12 像素 16 像素应该是默认值 24 像素 隐藏的文字(这一行前面有隐藏文字) 小数像素 30.5 整数像素 30(对比) 零 八 十一
[size=-10px]负像素
[size]无参数
[size=]空参数
[size=abc]字母参数 其他单位 pt
[size=2pc]其他单位
[size=1in]其他单位
[size=1cm]其他单位
[size=20mm]其他单位
[size=2em]其他单位
[size=3rem]其他单位
[size=4ex]其他单位
[size=1ch]其他单位
[size=2vw]其他单位
[size=2vh]其他单位
[size=2vmin]其他单位
[size=2vmax]其他单位
[size=20%]其他单位
[size=1,2]多参数 外层内层整数结束
普通文字大号普通 (无内容,不显示任何东西) 带[括号]的文字
下面是空内容测试
[fly=left]带参数 left[/fly]
[fly=100]带参数 100[/fly]
外层[/fly]
文本文本(都在一行上)
左对齐文字
居中文字
右对齐文字
大写 LEFT 首字母大写 Center
[align=top]顶部 top 无效参数
[align=123]数字参数 123
[align]无参数
[align=]空参数
右对齐大字
浮
动
内
容居中文字环绕?浮动元素影响文字环绕,align 对自身文本有效 无内容,不产生空白区域
左浮动
内容后面跟随普通文本,浮动块在左侧,后续文本环绕其右侧 左
浮
动
内
容后面跟随普通文本,浮动块在左侧,后续文本环绕其右侧 右浮动
内容后面跟随普通文本,浮动块在右侧,后续文本环绕其左侧 右
浮
动
内
容后面跟随普通文本,浮动块在右侧,后续文本环绕其左侧 左 LEFT文本 右 Right文本
[float=center]居中 center 无效参数
[float=top]顶部 top 无效参数
[float]无参数啊啊啊
[float=]空啊啊啊 大号右浮动内容1
内容2 左1左2后续文本。两个左浮动可能并排,后续文本环绕在它们右侧 浮动居中标题,居中标题不受浮动影响(块级),可能位于浮动下方或旁边 浮动块内滚动,且浮动本身生效 无内容,不产生浮动区域,不影响后续
大
浮
动后跟长段落,大浮动在左侧,段落环绕,浮动内文字大号
右对齐内层变大结束 内层覆盖字号,对齐方式内层可能独立
|