什么是在 HTML 5 中构建HTML 5徽标而不使用<img>
元素或使用 canvasdrawImage
或以其他方式使用图像资源的位图数据的最具学术性的方法。
换句话说,使用 HTML 5、CSS3 和我想象的 DIV 和画布绘制准确构建 HTML 5 徽标的方法是什么?我不是一个 CSS3 向导,它看起来非常令人生畏,比如说 100 多行,如果知道一个标准的方法来解决这个问题会很好。
这是一个非常有趣的编程问题。徽标本身非常酷,看起来非常 HTML 5/CSS3。
什么是在 HTML 5 中构建HTML 5徽标而不使用<img>
元素或使用 canvasdrawImage
或以其他方式使用图像资源的位图数据的最具学术性的方法。
换句话说,使用 HTML 5、CSS3 和我想象的 DIV 和画布绘制准确构建 HTML 5 徽标的方法是什么?我不是一个 CSS3 向导,它看起来非常令人生畏,比如说 100 多行,如果知道一个标准的方法来解决这个问题会很好。
这是一个非常有趣的编程问题。徽标本身非常酷,看起来非常 HTML 5/CSS3。
这个单标签徽标将帮助您-
<div id="css3icon" />
CSS-
#css3icon {
outline:solid 1px transparent;
display:inline-block;
position:relative;
height:0.8em; width:0.8em;
background:transparent;
color:transparent;
line-height:0.8em;
overflow:visible;
box-shadow:
0.8em 0 0 #38c,
1.4em 0 0 #38c,
2em 0 0 #38c,
2.6em 0 0 #38c,
3.2em 0 0 #38c,
3.6em 0 0 #38c,
4em 0 0 #38c,
4em 0.65em 0 #38c,
0.8em 1.3em 0 #38c,
1.4em 1.3em 0 #38c,
2em 1.3em 0 #38c,
2.6em 1.3em 0 #38c,
3.2em 1.3em 0 #38c,
3.6em 1.3em 0 #38c,
4em 1.3em 0 #38c,
4em 1.9em 0 #38c,
0.8em 2.6em 0 #38c,
4em 2.6em 0 #38c;
transform: skewX(-12deg);
-webkit-transform: skewX(-12deg);
-ms-transform: skewX(-12deg);
}
#css3icon:before {
position:absolute;
content:'';
display:block;
height:0.8em; width:2em;
margin:3.4em 0 0 0.8em;
background:#38c;
transform: skew(-1deg,18.4deg);
transform-origin: 100% 100%;
-webkit-transform: skew(-1deg,18.4deg);
-webkit-transform-origin: 100% 100%;
-ms-transform: skew(-1deg,18.4deg);
-ms-transform-origin: 100% 100%;
border-right:solid 1px #38c;
}
#css3icon:after {
position:absolute;
content:'';
display:block;
height:0.8em; width:2em;
margin:3.4em 0 0 2.8em;
background:#38c;
transform: skew(1deg,-18.4deg);
transform-origin: 0% 100%;
-webkit-transform: skew(1deg,-18.4deg);
-webkit-transform-origin: 0 100%;
-ms-transform: skew(1deg,-18.4deg);
-ms-transform-origin: 0 100%;
}
body {
width:100%;
padding-top:1em;
font-size:3em;
text-align:center;
}
body > * { position:relative; left:-2.4em; }
单击此处查看实时示例。
HTML5 徽标是图形图像。只有一种语义正确的方式来显示它,那就是使用指向 SVG 格式图形的图像标签:
<img src="http://www.w3.org/html/logo/downloads/HTML5_Logo.svg">
以其他方式显示它可能是一项学术编程练习——例如通过滥用 CSS——但这种方式在语义上是不正确的。画布也不正确,除非徽标有一些动画或其他需要画布的脚本行为。
您的问题与说如何在不使用 ap 标签的情况下以语义正确的方式插入一段正文文本相同?回答:你不能。您可以以其他方式插入它,但这些方式在语义上是不正确的。