传统的“HTML仅用于内容”思路如何处理动态格式化?

很长一段时间,我已经阅读并理解了有关Web开发的以下事实:

> HTML代表内容
> CSS用于演示
> JavaScript用于行为.

这通常都很好,我发现当我严格遵循这些准则并使用外部.css和.js文件时,它会使我的整个网站更易于管理.但是,我认为我发现了一种打破这种思路的局面.

我有一个自定义论坛系统,我为我的一个网站建立.除了这种系统的常用格式(链接,图像,粗体斜体和下划线等)之外,我还允许用户设置文本的格式,包括颜色,字体系列和大小.所有这些都由论坛消息数据库保存为格式化代码,然后在查看页面时转换为相应的HTML. (有点效率低,技术上我应该在保存前翻译,但这样我就可以在系统上工作.)

由于这个和其他类似系统的性质,我最终在生成HTML代码周围浮动了很多标签,我认为这是非正式弃用的,因为我应该使用CSS进行格式化.这打破了规则1和规则2,它规定HTML不应包含格式信息,而是更喜欢将信息放在CSS文档中.

有没有办法在CSS中实现动态格式化而不在标记中包含该信息?这值得吗?或者,考虑到正确代码的隐含限制,我可以限制用户可以执行哪些操作以遵循“正确”格式化代码的方式?

解决方法

可以使用元素的style属性
This is <span style="color: red;">red text</span>.

如果用户仅限于某些选项,则可以使用类:

This is <span class="red">red text</span>.

一定要使用语义HTML元素:

This is <strong>strong and <em class="blue">emphasized</em></strong>
text with a <a href="http://www.google.com" rel="external">link</a>.

常见的语义元素及其用户空间术语:

>< p> (段)
>< strong> (胆大)
>< em> (斜体)
>< blockquote> (引号)
>< ul>和< ol>与< li> (名单)
>更多……?

在论坛帖子中可能不太常见,但仍然可用的语义元素:

>< h1>,< h2>等(标题;请务必从某个值开始,以便您的页面有意义)>< del>,并且在较小程度上,< ins> (删除线)>< sup>和< sub> (上标和下标)>< dl>与< dt>和< dd> (对的列表)><地址> (联系信息)>更多……

相关文章

操作步骤 1、进入elasticsearch的plugin,进入ik。进入config。 2、在config下面建立以.dic为后缀的字典...
lengend data数据中若存在&#39;&#39;,则表示换行,用&#39;&#39;切割。
代码实现 option = { backgroundColor: &amp;#39;#080b30&amp;#39;, tooltip: { trigger: &...
问题原因 原因在于直接在js中取的变量并复制给var变量。 于是就变成这样。 解决办法 var data = &#...
前言 最近做了一个调查问卷导出的功能,需求是将维护的题目,答案,导出成word,参考了几种方案之后,选...
对于很多人来说,用字符编码都是熟能生巧,而不清楚为什么是那样的字符编码,所以我在这列了一个表,翻...