Нечетная центрирующая проблема CSS в современных браузерах без Chrome? - PullRequest
0 голосов
/ 20 января 2011

По какой-то причине у меня есть одна веб-страница, которая отображает что-то великолепное в Chrome, но совершенно отличается от FireFox и IE.

Эффект можно увидеть здесь .

Похоже, что другие браузеры убрали моё центрирование полей моих header и footer элементов.

Есть ли особая причина, по которой это работает только в Chrome?

Вот мой HTML:

<!DOCTYPE html>

<html lang="en">
<head>
    <meta charset="utf-8">
    <title>TileTabs</title>

    <link rel="shortcut icon" type="image/x-icon" href="images/favicon/favicon.ico">
    <link rel="stylesheet" href="css/v2.css" type="text/css">
    <link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.8/themes/base/jquery-ui.css" type="text/css">
    <link rel="stylesheet" href="css/veramono.css" type="text/css">

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
    <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.8/jquery-ui.min.js"></script>
    <script src="js/tile_interaction.js"></script>
</head>
<body>
    <header>
        <img src="images/logo/logo_v3.png" alt="logo" />
    </header>

    <div id="content">
        <ul>
            <li>
                <div class="tile">
                </div>
            </li>
            <li>
                <div class="tile">
                </div>
            </li>
            <li>
                <div class="tile">
                </div>
            </li>
            <li>
                <div class="tile">
                </div>
            </li>
            <li>
                <div class="tile">
                </div>
            </li>
            <li>
                <div class="tile">
                </div>
            </li>
            <li>
                <div class="tile">
                </div>
            </li>
            <li>
                <div class="tile">
                </div>
            </li>
            <li>
                <div class="tile">
                </div>
            </li>
            <li>
                <div class="tile">
                </div>
            </li>
        </ul>
    </div>

    <footer>
        <a class="emailus" href="index.htm">Home</a> | <a class="emailus" href="about.htm">About</a> | <a class="emailus" href="contact.htm">Contact</a>
    </footer>
</body>
</html>

CSS:

body {
    background: #F6F6F6;
    font-family: 'BitstreamVeraSansMonoRoman', 'Myriad-Pro', 'Myriad', helvetica, arial, sans-serif;
    margin: 0;
}

a:link, a:visited, a:hover, a:active {
    color: white;
    text-decoration: none;
}

header {
    width: 920px;
    background: #999;
    margin: 0px auto;
    text-align: center;

    -webkit-border-top-left-radius: 20px;
    -webkit-border-top-right-radius: 20px;
    -moz-border-radius-topleft: 20px;
    -moz-border-radius-topright: 20px;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;


}

#content {
    width: 920px;
    height: 760px;
    background: #999;
    margin: 0px auto;
}

footer {
    width: 920px;
    background: #999;
    margin: 0px auto;
    text-align: center;
    padding-top: 10px;
    padding-bottom: 10px;

    -webkit-border-bottom-right-radius: 20px;
    -webkit-border-bottom-left-radius: 20px;
    -moz-border-radius-bottomright: 20px;
    -moz-border-radius-bottomleft: 20px;
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px;    
}

li {
    float: left;
    list-style: none;
    padding: 34px;
}

.tile {
    cursor: pointer;
    background: red;
    border: 2px solid #000;
    width: 100px;
    height: 100px;
}

Ответы [ 3 ]

2 голосов
/ 20 января 2011

Новые теги <header> и <footer> (HTML5)

Для старых браузеров, которые не поддерживают HTML5, просто используйте стандартные div.

Если вы все еще хотите использовать <header> и <footer> вы можете использовать следующий код, чтобы он работал для браузеров, которые не поддерживают теги HTML5.

<script>
document.createElement('header');
document.createElement('footer');
</script>
1 голос
/ 20 января 2011

Проблема в том, что IE не полностью (если вообще поддерживает) теги <header> и <footer>.Я не уверен насчет Firefox 3.x, но он отлично работает в текущей бета-версии Firefox 4.

1 голос
/ 20 января 2011

избавиться от тегов заголовка

<-- <header> --!>   
<-- </header> --!>

и поместите изображение внутри тега содержимого следующим образом, также отцентрируйте изображение с помощью css

<div id="content">
        <img src="images/logo/logo_v3.png" alt="logo" /> 
        <ul>
           ...

теги являются частью HTML5, которые еще не полностью поддерживаются.

...