仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 823|回复: 7
打印 上一主题 下一主题

[DIV+CSS] 来看看:CSS垂直居中网页结构完成的5种办法

[复制链接]
分手快乐 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 00:03:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
更方便搜索引擎的搜索。用只包含结构化内容的HTML代替嵌套的标签,搜索引擎将更有效地搜索到你的内容,并可能给你一个较高的评价(ranking)。
网页制造WEB文章简介:使用CSS来完成工具的垂直居中有很多分歧的办法,对照难的是选择谁人准确的办法。我上面申明一下我看到的好的办法和怎样来创立一个好的居中网站。
使用CSS来完成工具的垂直居中有很多分歧的办法,对照难的是选择谁人准确的办法。我上面申明一下我看到的好的办法和怎样来创立一个好的居中网站。
利用CSS完成垂直居中其实不简单。有些办法在一些扫瞄器中有效。上面我们看一下使工具垂直会合的5种分歧办法,和它们各自的优弱点。(能够看看测试页面,有冗长注释。)



办法一
这个办法把一些div的显现体例设置为表格,因而我们可使用表格的vertical-alignproperty属性。
<divid="wrapper">
<divid="cell">
<divclass="content">
Contentgoeshere</div>
</div>
</div>
#wrapper{display:table;}
#cell{display:table-cell;vertical-align:middle;}
长处
content能够静态改动高度(不需在CSS中界说)。当wrapper里没有充足空间时,content不会被截断
弱点
InternetExplorer(乃至IE8beta)中有效,很多嵌套标签(实在没那末糟,另外一个专题)
办法二
这个办法利用相对定位的div,把它的top设置为50%,topmargin设置为负的content高度。这意味着工具必需在CSS中指定流动的高度。
由于有流动高度,也许你想给content指定overflow:auto,如许假如content太多的话,就会呈现转动条,以避免content溢出。
<divclass="content">
Contentgoeshere</div>
#content{
position:absolute;
top:50%;
height:240px;
margin-top:-120px;/*negativehalfoftheheight*/
}
长处
合用于一切扫瞄器
不必要嵌套标签
弱点
没有充足空间时,content会消散(相似div在body内,当用户减少扫瞄器窗口,转动条不呈现的情形)

网页制造WEB文章简介:使用CSS来完成工具的垂直居中有很多分歧的办法,对照难的是选择谁人准确的办法。我上面申明一下我看到的好的办法和怎样来创立一个好的居中网站。

办法三
这类办法,在content元素外拔出一个div。设置此divheight:50%;margin-bottom:-contentheight;。
content扫除浮动,并显现在两头。
<divid="floater">
<divid="content">
Contenthere</div>
</div>
#floater{float:left;height:50%;margin-bottom:-120px;}
#content{clear:both;height:240px;position:relative;}
长处
合用于一切扫瞄器
没有充足空间时(比方:窗口减少)content不会被截断,转动条呈现
弱点
独一我能想到的就是必要分外的空元素了(也没那末糟,又是别的一个话题)
办法四
这个办法利用了一个position:absolute,有流动宽度和高度的div。这个div被设置为top:0;bottom:0;。可是由于它有流动高度,实在其实不能和高低都间距为0,因而margin:auto;会使它居中。利用margin:auto;使块级元素垂直居中是很复杂的。
<divid="content">
Contenthere</div>
#content{
position:absolute;
top:0;
bottom:0;
left:0;
right:0;
margin:auto;
height:240px;
width:70%;
}
长处:复杂
弱点
IE(IE8beta)中有效
无充足空间时,content被截断,可是不会有转动条呈现
办法五
这个办法只能将单行文本置中。只必要复杂地把line-height设置为谁人工具的height值就能够使文本居中了。
<divid="content">
Contenthere</div>
#content{height:100px;line-height:100px;}
长处
合用于一切扫瞄器
无充足空间时不会被截断
弱点
只对文本无效(块级元素有效)
多行时,断词对照糟
这个办法在小元素上十分有效,比方使按钮文本大概单行文本居中。

网页制造WEB文章简介:使用CSS来完成工具的垂直居中有很多分歧的办法,对照难的是选择谁人准确的办法。我上面申明一下我看到的好的办法和怎样来创立一个好的居中网站。

哪一个办法?
我最喜好的是办法三,弱点未几。由于content会扫除浮动,以是能够在它下面安排其余元素,而且当窗口缩放时,
居中的content不会把别的的元素挡住。看例子。
<divid="top">
<h1>Title</h1>
</div>
<divid="content">
ContentHere</div>
#floater{float:left;height:50%;margin-bottom:-120px;}
#top{float:right;width:100%;text-align:center;}
#content{clear:both;height:240px;position:relative;}
如今你晓得是怎样回事了,如今我们入手下手创立一个复杂可是风趣的网站。终极的模样是如许的:



步骤一
以语义化标签入手下手是很好的。上面是我们的页面组成:
#floater/*把content置中*/
#contred/*centre盒*/
#side
#logo
#nav/*无序列表*/
#content
#bottom/*安排版权等*/
这是我用到的xhtml代码:
ACentredCompany
<divid="centered">
<divid="side">
<divid="logo">
<strong><span>A</span>Company</strong></div>
<ulid="nav">
<li><ahref="#">Home</a></li>
<li><ahref="#">Products</a></li>
<li><ahref="#">Blog</a></li>
<li><ahref="#">Contact</a></li>
<li><ahref="#">About</a></li>
</ul>
</div>
<divid="content">
<h1>PageTitle</h1>
Holisticlyre-engineervalue-addedoutsourcingafterprocess-centriccollaborationandidea-sharing.
Energisticallysimplifyimpactfulnichemarketsviaenabledimperatives.
Holisticlypredominatepremiuminnovationaftercompellingscenarios.
Seamlesslyrecaptiualizehighstandardsinhumancapitalwithleading-edgemanufacturedproducts.
Distinctivelysyndicatestandardscompliantschemasbeforerobustvortals.
Uniquelyrecaptiualizeleveragedweb-readinessvis-a-visout-of-the-boxinformation.
<h2>Heading2</h2>
Efficientlyembracecustomizedweb-readinessratherthancustomerdirectedprocesses.
Assertivelygrowcross-platformimperativesvis-a-visproactivetechnologies.
Convenientlyempowermultidisciplinarymeta-serviceswithoutenterprise-wideinterfaces.
Convenientlystreamlinecompetitivestrategicthemeareaswithfocusede-markets.
Phosfluorescentlysyndicateworld-classcommunitiesvis-a-visvalue-addedmarkets.
Appropriatelyreinventholisticservicesbeforerobuste-services.</div>
</div>
<divid="bottom">
Copyrightnoticegoeshere</div>

网页制造WEB文章简介:使用CSS来完成工具的垂直居中有很多分歧的办法,对照难的是选择谁人准确的办法。我上面申明一下我看到的好的办法和怎样来创立一个好的居中网站。

步骤二
如今我们入手下手用一些基础的CSS来给页面增加款式。把以下代码放进在我们的html页面顶部被引进的style.css。
html,body{
margin:0;padding:0;
height:100%;
}
body{
background:url(page_bg.jpg)50%50%no-repeat#FC3;
font-family:Georgia,Times,serifs;
}
#floater{
position:relative;float:left;
height:50%;margin-bottom:-200px;
width:1px;
}
#centered{
position:relative;clear:left;
height:400px;width:80%;max-width:800px;min-width:400px;
margin:0auto;
background:#fff;
border:4pxsolid#666;
}
#bottom{
position:absolute;
bottom:0;right:0;
}
#nav{
position:absolute;left:0;top:0;bottom:0;right:70%;
padding:20px;margin:10px;
}
#content{
position:absolute;left:30%;right:0;top:0;bottom:0;
overflow:auto;height:340px;
padding:20px;margin:10px;
}
在我们可以把content垂直居中之前,body和html应当被拉伸到100%的高度。因为height在padding和margin以内,以是我们要把它们设成0以避免由于很小的margin呈现转动条。
floater的margin-bottom是content高度(400px)的一半,-200px。
如今能够看到一下效果:



#centred的宽度为80%。这能够市网页跟着显现器的巨细而变更。一样平常称作流体结构。设置min-width和max-width以免网页过年夜大概太小。可是IE不撑持min/max-width。明显能够用流动宽度来取代。
由于#centred是绝对定位的,在它内里我们能够用相对定位来定位元素。设置#content的overflow:auto;以免转动条的呈现。IE不怎样喜好overflow:auto;除非我们指定高度(不是top和bottom的定位,也不是%)因而我们给它指定高度。

网页制造WEB文章简介:使用CSS来完成工具的垂直居中有很多分歧的办法,对照难的是选择谁人准确的办法。我上面申明一下我看到的好的办法和怎样来创立一个好的居中网站。

步骤三
最初要做的就是再增加点款式,让页面悦目点。从目次入手下手吧。
#navul{
list-style:none;
padding:0;margin:20px000;text-indent:0;
}
#navli{
padding:0;margin:3px;
}
#navlia{
display:block;background-color:#e8e8e8;
padding:7px;margin:0;
text-decoration:none;color:#000;
border-bottom:1pxsolid#bbb;
text-align:right;
}
#navlia::after{
content:
再现理想 该用户已被删除
沙发
发表于 2015-1-17 23:53:23 | 只看该作者
滚动条)层属性--溢出(visible/hidden/scroll/auto)
第二个灵魂 该用户已被删除
板凳
发表于 2015-1-26 13:39:30 来自手机 | 只看该作者
HTML技术的不断发展和完善,随之而产生了众多网页编辑器,从网页编辑器基本性质可以分为所见即所得网页编辑器和非所见即所得网页编辑器(则原始代码编辑器)
莫相离 该用户已被删除
地板
发表于 2015-2-4 20:31:28 | 只看该作者
直接用代码建立链接,如:可以直接输入 <a herf = \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"red.html\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\">红色的网页 12、插入标签法建立链接,可以再选中文字后在代码中插入html标签,页元素<a>.也可以按ctrl+t进入html标签插入方法之后输入代码即可。
蒙在股里 该用户已被删除
5#
发表于 2015-2-10 07:56:31 | 只看该作者
足见市场的反响和MACROMEDIA公司对它们的自信。说到Dreamweaver8我们应该了解一下网页编辑器的发展过程,随着互联网(Internet) 的家喻户晓。
灵魂腐蚀 该用户已被删除
6#
发表于 2015-3-1 05:44:18 | 只看该作者
滚动条)层属性--溢出(visible/hidden/scroll/auto)
深爱那片海 该用户已被删除
7#
发表于 2015-3-17 08:08:25 | 只看该作者
是当我和赵丽芬崔明艳老师进行交流后,很快就了解了还不太清楚的内容和并不了解的知识(像布局表格、绘制布局单元格等)。
活着的死人 该用户已被删除
8#
发表于 2015-3-24 04:16:30 | 只看该作者
只要我们努力,无论是怎样的艰难险阻,成功依然会迎面直击。在刚开始时我觉得dreamweaver mx XX很难理解。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-22 23:15

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表