-6

我有一个 CSS 类,我经常将其添加到内联 HTML 元素中以更改显示。

在 CSS 中:

  .mymath{ font-family:...; color:...;...}

在 HTML 中:

normal text <span class="mymath"> math text </span> normal text

有什么比我可以使用的更短的<span class="mymath">吗?

CSS/javascript 有什么帮助吗?

请提及解决方案是否涉及 HTML5

提前致谢。

4

5 回答 5

1

不,你不能真正使用更短的东西。这是最简洁的。当然你可以缩短你的班级名称。这会使它更短:-)

于 2013-06-12T21:01:47.677 回答
1

由于 B 标签在 HTML5 中没有语义意义(查找它),我不介意“滥用”它来对现有内容进行屏幕上的纯呈现格式:

  <style>
    b{ font-weight: normal; font-family:...; color:...;...}
  </style>


  normal text <b> math text </b> normal text

这可以减少您的开销

  "<span class="mymath"></span>" 

  "<b></b>"

这要短得多。

从技术上讲,您甚至可以制作自己的标签,只要将它们修补到您的 IE 的 HTML5 shim 中,CSS 仍然会“占用”标签。当 javascript 动态标记现有文档时,这很好。除非您希望验证暴徒用干草叉围绕您的房子,否则不要发布这样的恶意!

于 2013-06-12T21:16:26.117 回答
0

如果您想为您的 html 更全局地应用样式,您可以改为定位元素。您还可以使用较短的版本来设置字体大小、行高和系列。http://www.w3schools.com/cssref/pr_font_font.asp

例子:

body {
  font: normal 12px/14px Arial, Verdana;
}

请注意,没有 . 身前。这将针对您的 html 中的标签。如果您愿意,您也可以在 span 标签上执行此操作。

于 2013-06-12T21:03:05.693 回答
0

可以使用后代或子选择器来指定您想要的样式,这将减少您需要在元素上指定的类的数量。例如:

<style>
  #test > p > span {
     font-weight: bold;
  }
  #test span {
     color: red;
  }
</style>

<div id="test">
 <p>my content <span>different</span> more content</p>
 <div>
   <p>my content <span>different</span> more content</p>
 </div>
</div>

这将使所有跨度文本颜色为红色,但只有第一个跨度粗体(那里未经测试的代码,但你应该明白)。

这是一组关于 CSS 选择器的不错的教程的链接,您可能会觉得有帮助。

然而,这确实不是一个好主意。这意味着您的风格与文档的结构密切相关,因此非常脆弱。向您的元素添加更多类可为您提供更细粒度的控制,并且更不那么脆弱——即使文档结构发生变化,样式也将保持一致。

于 2013-06-12T21:22:12.957 回答
-2

是的,创建一个 .css 文件会有所帮助。您不需要将 CSS 内联。您只需在每个 html 页面中添加对 CSS 文件的引用。

于 2013-06-12T21:01:16.983 回答