我应该使用啥标签而不是 html 中已弃用的标签字体(不能使用 CSS)

Posted

技术标签:

【中文标题】我应该使用啥标签而不是 html 中已弃用的标签字体(不能使用 CSS)【英文标题】:What tag should I use instead of deprecated tag font in html (cannot use CSS)我应该使用什么标签而不是 html 中已弃用的标签字体(不能使用 CSS) 【发布时间】:2010-09-26 09:33:09 【问题描述】:

这个问题可能会造成误解:我知道我必须使用 CSS 来成功验证我的文档是否为 Xhtml 1.0 过渡。事实是我必须在我的网页中嵌入一张由零和用text image 创建的图片组成的图片,问题是代码使用了不推荐使用的标签字体,看起来像这样

<!-- IMAGE BEGINS HERE -->
<pre>
    <font size="-3">
        <font color="#000000">0001100000101101100011</font>
        <font color="#010000">00</font>
        <font color="#020101">0</font>
        <font color="#040101">0</font>
        <font color="#461919">1</font>
        <font color="#b54f4f">1</font>
        ...etc.etc...
    </font>
</pre>
<!-- IMAGE ENDS HERE -->

(在这个代码示例中,我在每两个标签之后插入了一个换行符以使其更具可读性,但由于&lt;pre&gt; 标签,原始代码都在一行中)。 字体的颜色至少会改变数千次,所以我从未考虑在 CSS 中为每个组合创建一个字段。希望有人至少知道在哪里可以找到解决方案,我到处搜索 :) 谢谢

【问题讨论】:

当你说颜色变化至少 1000 次时,你的意思是有 1000+ 种不同的颜色吗? 是的,我不知道正确的数字,但有 300*15 个条目(零或一),每个条目可能有不同的颜色 “:我知道我必须使用 CSS 来成功验证我的文档是否为 XHTML 1.0 过渡”——这根本不是真的。 【参考方案1】:

你可以替换

&lt;font color="#000000"&gt;0001100000101101100011&lt;/font&gt;

&lt;span style="color:#000000"&gt;0001100000101101100011&lt;/span&gt;

等等……

*编辑:我知道这是 CSS,但它不像问题状态那样涉及单独的样式表,这可能没问题。

【讨论】:

糟糕,我刚刚发布了完全相同的建议。我将删除我的,但我同意 Ryan:此解决方案不使用样式表。但请注意,它确实会增加一定数量的页面。【参考方案2】:

那么 javascript 呢?

将颜色数据作为 JSON 数组发送,“0”和“1”作为另一个数组发送,并动态生成 DOM 元素。

<script>
values = [1, 0, 0, 1, ... ]
colors = ["010000", "020101", ...]

for (i = 0; i < values.length; i++) 
    span = createElement("span"); // use a portable function for creating elements
    span.setAttribute("style", "color:#"+colors[i]);
    txtNode = document.createTextNode(values[i]); 
    span.appendChild(txtNode);
    document.appendChild(span);

</script>

或者类似的...

【讨论】:

【参考方案3】:

非常感谢! :D 我用过这段代码

<!-- IMAGE BEGINS HERE -->
<div style="font-size:x-small;font-family:monospace">
    <span style="color:#000000">0001100000101101100011</span>
    <span style="color:#010000">00</span>
    ...etc.etc...
</div>
<!-- IMAGE ENDS HERE -->

它工作正常! :D

【讨论】:

【参考方案4】:

为什么需要验证?

您已经获得的解决方案非常适合您正在做的事情。有用。这不是一个有意义的文档,应该用语义标签进行标记以提高可访问性;这是一件艺术品,如果它可以帮助您更清楚地表达您的意图,请随意忽略这些规则。

如果验证是您试图做出的艺术声明的一部分,那么请按照其他海报的建议使用&lt;span style="color:#ff00ff;"&gt;00&lt;/span&gt; - 但这会大大增加您的文件大小。

另一种方法是更改​​文档类型,这样您就不会以 XHTML 过渡为目标 - 改用 &lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"&gt; 或一些较早的 HTML 修订版。

【讨论】:

感谢发帖。我同意你在某些情况下不遵守规则的观点,但我试图让它更接近标准 XHtml,并且文件大小对于该页面并不那么重要;此外,在这种情况下,我得到了相同的结果:) 不得不说我不同意。由于缺乏标准实现,HTML 很难得到普遍支持,这一点已被普遍接受。 XHTML 旨在缓解这种情况,我们都应该努力满足新标准并消除原始 HTML 的痛苦。

以上是关于我应该使用啥标签而不是 html 中已弃用的标签字体(不能使用 CSS)的主要内容,如果未能解决你的问题,请参考以下文章

更新 Swift 中已弃用的 Firebase 函数

Magnolia 的 AccessDefinition 类中已弃用的角色

我应该使用啥来代替已弃用的 `onerror` 属性?

在 iOS7 中,我应该使用啥来代替已弃用的 GKLeaderboardViewController?

替代Apache Camel中已弃用的XmlJsonDataFormat

Xcode 6.4 中已弃用的 segue