Freecodecamp: [BETA]应用视觉设计给出了一个不好的语义概念

创建于 2018-01-09  ·  16评论  ·  资料来源: freeCodeCamp/freeCodeCamp

挑战名称

https://beta.freecodecamp.org/zh-CN/challenges/applied-visual-design/use-the-em-tag-to-italicize-text

问题说明

似乎有关“文本样式”的章节给出了完全错误的语义概念。 诸如“使用em标签对文本进行斜体显示”之类的标题确实给出了一个不好的主意,即使用语义标签进行演示。

\标记是为了强调,默认情况下它应用斜体几乎是一个巧合。 同样,并非所有斜体文本都旨在强调。 在某些情况下,谦虚\标记是正确的选择。

help wanted learn discussing

最有用的评论

我可以创建PR,并将其从种子中删除。

您是要立即删除它们吗,如果是。 我认为最好还是保留它们,以便我们能够收集更多反馈。

所有16条评论

@ Facundo-Corradini您是对的-感谢您举报。 您会解决这个问题吗? 如果是,请转到我们的贡献准则。 您可以将标题重命名为Applied Visual Design: Use the em Tag to Emphasize Text

如果需要,我很乐意为您提供帮助

@manuhdez太好了。 请前往我们的贡献准则
@raisedadead@systimotic我们应该实现这个吗?

@ Facundo-Corradini,您好:感谢您的关注并抽出宝贵的时间来回顾这一挑战。

您能为我们提供一些建议的更改,以帮助我们阐明这种差异的重要性吗,请对词语进行一些建议的更改?

我同意,目前的词汇可能会在学习中提出错误的概念。

当然可以让我处理一个提案,然后将其上传,如果您同意,我可以进行更改。

它不是那么简单,因为该部分实际上是在处理Visual Design,而不是语义。 因此,也许我们应该将其命名为“斜体文本”并说明每个标签的用例

嘿@ Facundo-Corradini! 最近好吗?

大家好,

一直在思考如何解决这个问题,并逐步研究课程以了解更适合的地方。 但是,没有真正简单的方法可以解决这个问题。 我们选择的任何标签都将剩下其他用例,而在一次挑战中试图挤压每种样式的不同用例会感到局促。 本节无论如何都处理应用的视觉设计,而不是语义。

由于可访问性部分涵盖了一些结构性语义,因此可能需要添加一些文本级别的语义。 或者稍后在应用的视觉设计部分中将其作为超时。 但是我不确定我们是否仍按时进行课程更改(我相信不是,不是吗?)

因此,选项为:

0-保持挑战不变

1-将标题更改为“强调文本...”并说明还有其他方法可以使文本变为斜体,其中
--- 1.A-稍后将在假设的新文本级语义部分中介绍
--- 1.B-只需链接文本级语义的良好资源

2-将与文本样式有关的所有视觉设计挑战(例如下划线,删除线,字体粗细和斜体)更改为中性标签(例如span),并将它们转变为基于CSS的挑战,并说明存在适用于该标签的不同标签样式默认情况下,
--- 2.A-将在假设的新文本级语义部分中介绍
--- 2.B-只需链接有关文本级语义的良好资源

我倾向于认为最好的解决方案是2A,而1A是一个很好的折衷方案。

但现实的是,可能是1B。 有意义的标题,带有解决问题的描述,以及最佳露营者的链接,而无需更改实际挑战或课程

有什么想法吗?

@ Facundo-Corradini,您打算在源代码中使用文本级语义吗?

@raisedadead
我认为所面临的挑战如下:

设置多个标题元素的字体大小
设置多个标题元素的字体粗细
设置段落文本的字体大小
设置段落的行高

在我们找到一个好的解决方案之前,我认为我们应该在beta之后才有所不同。
我可以创建PR,并将其从种子中删除。

我可以创建PR,并将其从种子中删除。

您是要立即删除它们吗,如果是。 我认为最好还是保留它们,以便我们能够收集更多反馈。

@raisedadead现在将其删除,并在对其重新措词或分类更为准确时将其添加到Beta之后。 如果他们对语义提出了错误的想法,也许我们不应该让露营者通过它们来错误地学习概念:)

@ahmadabdolsaheb对不起,我错过了通知

您引用的内容(字体大小,字体粗细和行高)与语义没有直接关系。 除非做一些奇怪的事情,例如将所有文本作为<p>标签,并在尝试将某些文本表示为标题时调整字体大小。 但是,在第一部分介绍<h><p>元素时,以及在_Applied Visual Design:调整标题大小与标签Tag_:

标题标签(h1到h6)的字体大小通常应大于段落标签的字体大小。 这使用户更容易从视觉上理解页面上所有内容的布局和重要性级别。 您可以使用font-size属性来调整元素中文本的大小。


面临挑战的部分是:

-使用强标签使文本变为粗体: <strong>元素用于更重要的内容(例如警告),而<b>元素用于引起对文本的注意,而不会表明它更重要。 默认情况下,两者都只是粗体,但它们的含义并不相同

-使用u标签在文本下划线:这可能是最复杂的..引用W3C建议:

u元素表示文本范围,该文本范围具有清晰表达的,非显式呈现的非文本注释,例如将文本标记为中文文本的专有名称(中文专有名称标记),或将文本标记为拼写错误。 (...)在大多数情况下,其他元素可能更合适

据我所知,在大多数语言中,我们只希望标头等带有下划线,并且应该通过设置<h(x)>标签的样式来解决。 拼写错误是另一个用例,但是我们很少会出现故意编写和标记拼写错误的情况。

-使用em标签对文本进行斜体显示:
<em>标签用于强调,例如,如果某人喜欢文本语义,但它不是专家(:p),则可以说“我不是那个在文本语义上的人”。 对“那个”一词的强调使人更加清楚,尽管对此感兴趣,但它不会阻止它时不时地使用不正确的东西。
<em>默认情况下为斜体,但是没有什么可以阻止我们根据需要使用<em>标签。 我通常也给它加一些粗体。
同样,并非所有斜体文本都旨在强调。 考虑一下定义,专业用语或用外语书写的定义(通常是拉丁语表达)。 在这些情况下,
<i>标签是正确的选择。
甚至<cite>元素可能是显示斜体文本的正确方法,当引用作品或作者的名称时,通常与<q><blockquote>

-使用del标记删除线文本
<del>用于删除的内容,例如,当标记从文档的先前版本删除的内容时,例如git(hub)会带有删除线和红色背景,而不是非删除线,新的/更改的零件的绿色背景。
<del>的默认输出是删除线,但每次删除线文本都不应使用<del>
例如,对于不再相关的事情,例如在折扣产品价格标签上标记参考正价时,您可能希望使用<s>元素。
或者只是使用<span>并将其设置为删除线,如果以上定义不适用于您删除某些文本的特定原因。


尽管如此,所有这些部分对于应用视觉设计都是必不可少的。

因此,我的建议不是删除也不推迟,而是保持原样并在受到威胁的部分添加一些说明,这些部分可能链接到文本级语义的外部来源。


我最喜欢的文本级语义资源是W3C建议。
https://www.w3.org/TR/2016/REC-html51-20161101/textlevel-semantics.html
以及有关每个标记的用例的MDN澄清,例如
https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/strong

不过可能有点技术性,所以我可以寻找一些新手友好的选项,或者,如果您愿意的话,可以在freeCodeCamp博客上自己写一个:

我认为挑战的标题和使用<em>斜体是完全错误的,应将其重命名为:
应用的视觉设计:使用斜体字体样式将文本倾斜

并从以下文本更改:

要强调文本,可以使用em标签。 当浏览器应用字体样式的CSS时,这会将文本显示为斜体。 元素。

要斜体化文本,请将css规则_font-style:italic_应用于要以斜体样式显示的元素。

因此,使用<em>可能会在“应用程序可访问性”部分遇到更大的挑战。

谢谢大家的反馈。 我们将远离基于主题的课程,我们期待在即将到来的基于项目的课程中对语义进行更好的描述。

@scissorsneedfoodtoo ,有什么想法吗?

感谢@ Facundo-Corradini提供的详细说明和其他建议。许多项目仍在开发中,一旦经过测试,将以滚动方式发布。 如果有人可以在当前的视觉设计挑战中更新描述,则可能值得暂时保留此问题。

结束时已过时。 如果有人想继续对话,请随时留言,我们可以重新打开。 谢谢大家,祝大家编程愉快

此页面是否有帮助?
0 / 5 - 0 等级