如何在页面中心定位标题

时间:2013-09-12 08:32:59

标签: html css

您好我正在尝试将我的标题放在页面中间,我有两个徽标需要放在标题的两侧。我已经尝试了text-align:center,甚至margin:0px auto这些都没有奏效?是我的布局需要改变吗?或者我的CSS缺少什么?

我的代码位于下方,您也可以查看jsFiddle

非常喜欢任何关于如何解决这个问题的意见以及在将来做这件事时我应该记住的任何内容

的index.html

<div class="wrapper">


<header>
<h1>Website Service</h1>
<img src="imgs/logoa.png" id="sjplogo"/>
<img src="imgs/logob.png" id="sslogo"/>
</header> 
<div class="maincontent"></div>
<footer>
</footer>
</div>

CSS / style.css中

@charset“utf-8”;     / * CSS Document * /

/********************************
* CSS Reset                     *
*********************************/
html, body, div, span, applet, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,footer, header, hgroup, menu, nav, section {
    display: block;
}

body {
       height:100%;

    line-height: 1;
    background-color:#EEEEEE;
        font-family:Gotham, "Helvetica Neue", Helvetica, Arial, sans-serif;

}

ol, ul {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

/********************************
* Main Styles                   *
*********************************/

#wrapper {
height:100% 
}

header {
background: #062141; /* Old browsers */
/* IE9 SVG, needs conditional override of 'filter' to 'none' */
background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzA2MjE0MSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjI1JSIgc3RvcC1jb2xvcj0iIzBmMmY0ZSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjYyJSIgc3RvcC1jb2xvcj0iIzJiNTg3OCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9Ijk5JSIgc3RvcC1jb2xvcj0iIzJiNTg3OCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgPC9saW5lYXJHcmFkaWVudD4KICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2dyYWQtdWNnZy1nZW5lcmF0ZWQpIiAvPgo8L3N2Zz4=);
background: -moz-linear-gradient(top,  #062141 0%, #0f2f4e 25%, #2b5878 62%, #2b5878 99%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#062141), color-stop(25%,#0f2f4e), color-stop(62%,#2b5878), color-stop(99%,#2b5878)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top,  #062141 0%,#0f2f4e 25%,#2b5878 62%,#2b5878 99%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top,  #062141 0%,#0f2f4e 25%,#2b5878 62%,#2b5878 99%); /* Opera 11.10+ */
background: -ms-linear-gradient(top,  #062141 0%,#0f2f4e 25%,#2b5878 62%,#2b5878 99%); /* IE10+ */
background: linear-gradient(to bottom,  #062141 0%,#0f2f4e 25%,#2b5878 62%,#2b5878 99%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#062141', endColorstr='#2b5878',GradientType=0 ); /* IE6-8 */
    height:100px;
    width:auto;

}

header h1 {
    text-align:center;
    margin:0px auto;
    font-size:42px;
    color:white;
    font-family:"ufonts com perpetua 2";
    display:inline-block;
}

.maincontent {

height:600px;

}
#sjplogo {
float:left; 

}
#sslogo {
float:right;        

}

footer {
background: #062141; /* Old browsers */
/* IE9 SVG, needs conditional override of 'filter' to 'none' */
background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzA2MjE0MSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjI1JSIgc3RvcC1jb2xvcj0iIzBmMmY0ZSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjYyJSIgc3RvcC1jb2xvcj0iIzJiNTg3OCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9Ijk5JSIgc3RvcC1jb2xvcj0iIzJiNTg3OCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgPC9saW5lYXJHcmFkaWVudD4KICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2dyYWQtdWNnZy1nZW5lcmF0ZWQpIiAvPgo8L3N2Zz4=);
background: -moz-linear-gradient(top,  #062141 0%, #0f2f4e 25%, #2b5878 62%, #2b5878 99%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#062141), color-stop(25%,#0f2f4e), color-stop(62%,#2b5878), color-stop(99%,#2b5878)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top,  #062141 0%,#0f2f4e 25%,#2b5878 62%,#2b5878 99%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top,  #062141 0%,#0f2f4e 25%,#2b5878 62%,#2b5878 99%); /* Opera 11.10+ */
background: -ms-linear-gradient(top,  #062141 0%,#0f2f4e 25%,#2b5878 62%,#2b5878 99%); /* IE10+ */
background: linear-gradient(to bottom,  #062141 0%,#0f2f4e 25%,#2b5878 62%,#2b5878 99%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#062141', endColorstr='#2b5878',GradientType=0 ); /* IE6-8 */
height:100px;
postion:absoutle;
bottom:0;
}

4 个答案:

答案 0 :(得分:1)

h2是默认的块级元素,您正在使用display: inline-block;,因此它不会使您的文本居中,因为它不再占用整个水平空间,因此您需要获取摆脱display: inline-block;

Demo

此外,如果您希望文本旁边有两个图像,请将所有三个元素包装在容器中,为容器元素指定一些fixed width,并使用margin: auto;正确定位图像,您可以使用position: relative;作为包装元素,而不是使用position: absolute;将每个元素放在容器元素中。

Positioning Demo

<div class="header">
    <div class="wrap">
        <span class="img_1"></span>
        <h2>Hello</h2>
        <span class="img_2"></span>
    </div>
</div>

.header .wrap {
    border: 1px solid #f00;
    width: 100px;
    margin: auto;
    text-align: center;
    position: relative;
}

.header .wrap .img_1, .header .wrap .img_2 {
    border: 1px solid #0f0;
    position: absolute;
    height: 20px;
    width: 20px;
    top: 25px;
}

.header .wrap .img_1 {
    left: 0;
}

.header .wrap .img_2 {
    right: 0;
}

答案 1 :(得分:0)

您应为width设置一个特定header,以使margin:0 auto正常工作。

答案 2 :(得分:0)

您能否请使用此代码Demo

<header>
    <center><h1>Website Service</h1></center>
    <img src="imgs/logoa.png" id="sjplogo"/>
    <img src="imgs/logob.png" id="sslogo"/>
</header> 

答案 3 :(得分:0)

从css中删除display:inline-block;代码并执行代码。

  

demo