在正常情况下,我可以将文本和样式分开,但是当文本是动态的时(我可以由管理员用户编辑),我应该怎么做呢?用户当然想要使用粗体,斜体等,但是如果我放一个普通的html编辑器(我认为)我打破了分离规则,因为文本中会有html元素。 (我可以使用BB代码,但它是一样的。)
从长远来看,我认为当我想在任何非HTML环境中使用文本时,它可能会导致问题。当然我可以删除html标签,但这不是我想要使用的方式(不是因为它不起作用,而是原始的理论问题)。
在某些情况下,我可以拆分句子来解决这个问题,但我认为这是一个不好的方法,因为这些部分是无意义的,而且它也不会那么容易编辑。
对此有什么好的解决方案吗?
答案 0 :(得分:0)
那是完全可以的。
您为用户提供了oppertuniny来为文本设置一些属性(BBCodes推荐)。
那是内容。然后,它是设计的一部分,用于解释属性并对其进行样式化。
例如,您可以提供该功能,让用户定义类似[headline]MyHeadline[/headline]
的内容。这是纯粹的内容。
如何用HTML替换[headline]
以及如何设置结果文本的样式取决于设计。
编辑:我建议BBCodes提供一组封闭的功能。这可能更容易处理。您可以在另一个上下文中使用它们并解释它们,而不是剥离HTML。
答案 1 :(得分:0)
如果输入的标签是语义标签,即他们使用的是<i>
标签而不是style="font-style:italic"
,那么您的设计和内容仍然是分开的。
分离设计和内容是将网站的演示文稿与可读代码分开,而不是完全删除标记。
我建议你专注于语义HTML。