1

我试图设置一个居中对齐的 div,无论是垂直还是水平,我试图通过设置 div 的宽度和高度来做到这一点,然后将其定位为固定中心并将边距偏移 50%。

这是我使用的 css

#404-wrapper    {width:400px; height:200px; position:fixed; left:50%; top:50%; margin-top:-100px; margin-left:-200px;}
#404-wrapper a  {font-size:14px; line-height:120%;} 

我也在这里做了一个 jsfiddle - http://jsfiddle.net/wnGL3/

但我不明白为什么它不起作用,有什么想法吗?

4

5 回答 5

3

重命名您的标记和 css,而不用前面的数字

#wrapper    {width:400px; height:200px; position:fixed; left:50%; top:50%; margin-      top:-100px; margin-left:-200px;}
#wrapper a  {font-size:14px; line-height:120%;} 
于 2012-12-27T15:22:06.957 回答
2

id在 HTML5 中,属性可以合法地以数字开头,但在 CSS 中您仍然会遇到问题。

如果您无法更改 id,则可以使用属性选择器

[id="404-wrapper"] {}

演示:http: //jsfiddle.net/wnGL3/10/

只是为了好玩,还有另一种使用 unicode 转义码的方法:

#\00003404-wrapper {}

\000034代表数字4。演示:http: //jsfiddle.net/wnGL3/11/

于 2012-12-27T15:25:29.103 回答
1

不幸的是,身份证不能以数字开头。

来自 Id 的 W3C 规范

id = name [CS] 此属性为元素分配名称。此名称在文档中必须是唯一的。

http://www.w3.org/TR/html4/types.html#type-name在本文中,它描述了 ID 的“名称”可以是什么。

ID 和 NAME 标记必须以字母 ([A-Za-z]) 开头,后跟任意数量的字母、数字 ([0-9])、连字符 (“-”)、下划线 (“_”) 、冒号(“:”)和句点(“.”)。

将 ID 更改为 wrapper-404 即可。

#wrapper-404    {width:400px; height:200px; position:fixed; left:50%; top:50%; margin-top:-100px; margin-left:-200px;}

#wrapper-404 a    {font-size:14px; line-height:120%;}​

http://jsfiddle.net/rlemon/wnGL3/3/

于 2012-12-27T15:25:49.460 回答
0

使用相对位置而不是固定位置。它应该工作。

于 2012-12-27T15:21:30.333 回答
0

ID 不能以 css 中的数字开头。

但是你可以通过改变来修复它

#404-wrapper

[id='404-wrapper']

是一个工作示例。

于 2012-12-27T15:26:05.860 回答