【发布时间】:2014-08-16 11:09:04
【问题描述】:
Marquee 是html 中最讨厌的标签之一,这种仇恨可能要追溯到 90 年代,当时每个人都有自己的网页,每个人都滥用这个标签。
在我作为兼职网页设计师的这些年里,我发现这个标签对于一些技巧非常有用。 “缺乏兼容性”只是对IE 方式的宣传(TBH,我也不喜欢IE),因为据我的测试证实,最新版本的IE、FF、@ 987654330@、Safari和Chrome支持。
不过,我的代码有问题:
<html>
<head>
<title>
</title>
<style type="text/css">
body, marquee {font-family: courier new; font-size: 30}
marquee {width: 10em}
span {background-color: #008000};
</style>
</head>
<body>
<marquee bgcolor="#800000" direction="left" behavior="slide"><span>1234567890</span></marquee><br>
12345678901234567890<br>
</body>
</html>
整个文档使用相同的字体和大小,marquee 元素的宽度明确设置为 10em(是的,当你增加数字时它会变长,是的,当你删除 @987654335 时它是像素小@)。无论您放什么值,marquee 的宽度都是该值的 160%。
编辑:
我的问题可能含糊不清并引起一些混乱。绿色条应滑入并完全覆盖红色背景。 marquee 和滑动 span 都应该是 10 个字符宽(marquee 不是,这就是问题所在)。
分析了来自 cale_b 的非常有用且详细的答案,我得出的结论是,我的浏览器将 width: 1em 解释为“此元素的宽度是当前正在使用的字体的一个高度”。由于大多数字体使用黄金比例来表示宽度/高度比例,我假设这就是为什么我的长度增加了 160% (gr=1.61803)。
你同意我的结论吗?你知道如何让这两个元素的字符宽度相同吗?
【问题讨论】:
-
"2 行纯 html" 嗯不,不是
-
为什么说长话短说,你能把它简写成问题吗,还有一个 jsfiddle 或其他东西会很好..
-
您是否假设 (a)
10em必须正好是 10 个字符宽,并且 (b) 它只是搞砸的选框?这是一个侯爵+一个10em-wide div,宽度相同。 codepen.io/paulroub/pen/rdqIc -
这不仅仅是“缺乏兼容性”,标准明确指出这是一个“过时”、“不合格”的功能。w3.org/TR/html5/obsolete.html#obsolete
-
@PeeHaa 好的,
html+css。有效行数:marquee {width: 10em}<marquee bgcolor="#800000" direction="left" behavior="slide"><span>1234567890</span></marquee>@Ronni Skansing jsfiddle.net/FWWEn - 那是多少行?顺便说一句,我正在使用嵌入式系统,每个保存的字节都很重要(所以你不会在很多层面上误会我的意思)
标签: html css internet-explorer styles width