Мне нужна помощь в получении одинаковых размеров div в разных браузерах - PullRequest
1 голос
/ 16 июля 2010

Я работаю над сайтом, расположенным здесь: http://www.freshhealthybistro.com/temp/

Я использовал сетку 960, а CSS для 960 была взята с сайта: (Google 960 GS, потому что я могу разместить только одну гиперссылку)

Я понимаю, что, возможно, мне следовало бы просто избегать использования 960, но в любом случае ... Я использовал его, и, к сожалению, мой веб-сайт не одинаков для всех браузеров. Серый стол под слайд-шоу (тот, что с правой стороны) должен расширяться до длины слайд-шоу, чтобы он не был короче, и обе таблицы выстроились в одну и ту же длину. Вместо этого он короче в каждом браузере, и если я попытаюсь изменить свойства с% на px, он все равно будет неравномерным. В браузере Firefox даже таблица, содержащая слайд-шоу, кардинально отличается от любого другого браузера и выглядит так, будто веб-сайт не работает. Вот мой CSS:

@charset "UTF-8";
/* CSS Document */


body {
 margin:0;
 padding:0;
 background-image:url(../images/fgc_bg.png);
 color: #FFFFFF;
 font-family: arial,sans-serif;
}

h1 {
 font-size: 24px;
 color: #FFFFFF;
 font-family: arial,sans-serif;
 line-height: 50px;
}

#container {
 position:absolute;
 height: 100%;
 left: 50%;
 width: 1200px;
 margin: 0;
 margin-left: -600px;
}

#navigation {
 position: float;
 float: left;
 background-image:url(../images/topbar.png);
    width: 960px;
    height: 50px;
 margin-top: -825px;
 margin-left: 120px;
}

#footer {
 position: float;
 float: left;
 background-image:url(../images/topbar.png);
 text-align: center;
    width: 960px;
    height: 50px;
 margin-top: -25px;
 margin-left: 120px;
}

#clearfooter {
 position: float;
 float: left;
    width: 1200px;
    height: 50px;
}

.grid_1,
.grid_2,
.grid_3,
.grid_4,
.grid_5,
.grid_6,
.grid_7,
.grid_8,
.grid_9,
.grid_10,
.grid_11,
.grid_12 {
 display:inline;
 z-index: 1;
 float: left;
 position: float;
 margin-left: 1%;
 margin-right: 1%;
}

 .grid_1 {
 width:6.333%;
}

 .grid_2 {
 width:14.667%;
}

 .grid_3 {
 margin-left: 120px;
 margin-top:  30px;
 width:23.0%;
}

 .grid_4 {
 width:31.333%;
}

 .grid_5 {
 width:39.667%;
}

 .grid_6 {
 width:48.0%;
}

 .grid_7 {
 margin-top:  30px;
 width:50.666%;
}

.grid_8 {
 width:64.667%;
}

.grid_9 {
 width:73.0%;
}

.grid_10 {
 margin-top: 50px;
 margin-left: 120px;
 width: 940px;
}

.grid_11 {
 width:89.667%;
}

.grid_12 {
 width:98.0%;
}

#logo {
 position: float;
 float: left;
 background-image:url(../images/logo.png);
 z-index: 100;
 width: 266px;
    height: 266px;
 margin-top: -933px;
 margin-left: 472px;
}

#content{
 position: relative;
 float: left;
 background-image:url(../images/contentbg.png);
 width: 1200px;
 height: 800px;
 margin: 150px 0 0 0;
 z-index: -20;
 }

#background {
 position: relative;
 float: left;
 overflow: auto;
 background-color:#bf6b31;
 width: 100%;
 height: 800px;
 padding: 0;
 margin: 150px 0 0 0;
 z-index: -100;
}

#clearfix {
 clear: both;
}

У меня также есть странная проблема со слайд-шоу. В IE6 навигация в режиме слайд-шоу (4 кнопки в правом нижнем углу) работает должным образом. В любом другом браузере эти кнопки не работают и недоступны для посетителей. Я не знаю, какова причина этого, но я предполагаю, что это может иметь какое-то отношение к z-index. Вот файл CSS для слайд-шоу:

.featuredbox-wrapper{
 display: none;
}
.featuredbox-wrapper,
.featuredbox{
 top: 0px;
 left: 0px;
 width: 940px;
    height: 400px;
 margin-left:auto;
 margin-right:auto;
    position: relative;
    overflow: hidden;
    font-family:  Verdana, Tahoma, "Lucida Sans";
    font-size: 9pt;
    font-weight: normal;
 z-index: 10;
} 
.featuredbox .description{
 bottom: 55px;
 left: 5px;
 font-size: 16pt;
 color: #FFF;
 width: 500px;
 height: 20px;
 position: absolute;
 font-style:none;
 font-weight:normal;
}
.featuredbox-wrapper .navigation{
 bottom:15px;
 right:15px;
 padding:0px;
 position:absolute;
 z-index: 100; 
 height: 20px;
 width: 100px;
}
.featuredbox-wrapper .navigation ul{
 list-style: none;
 list-style-type: none;
 margin: 0px;
 padding: 0px;
}
.featuredbox-wrapper .navigation li{
 float: left;
 height: 20px;
 width: 20px;
 margin: 0px 5px 0px 0px;
 padding: 0px;
 background-color: #FF0000;
 cursor: pointer; cursor: hand;
 background:transparent url(../images/inactive.png) no-repeat scroll 0 0;
}
.featuredbox-wrapper .navigation li.hover{
 cursor: pointer; cursor: hand; 

}
.featuredbox-wrapper .navigation li.active{
 cursor: pointer; cursor: hand;
 background:transparent url(../images/active.png) no-repeat scroll 0 0;
}
.featuredbox .box-slide1,
.featuredbox .box-slide2 {
    position: absolute;
    top: 0px;
    left: 0px;
    height: 300px;
    width: 600px;
    z-index: -1;
 background: #FFF;
 color: #000; 
}

Спасибо за помощь. Я все еще изучаю CSS и ценю помощь в понимании, где я ошибся. Однородность между браузерами в настоящее время является моей основной областью жалоб.

1 Ответ

3 голосов
/ 16 июля 2010

Основная проблема заключается в том, что вы решили использовать систему сетки, но затем не заставили свой ползунок соответствовать размеру, необходимому для его размещения.Смысл использования системы сетки состоит в том, чтобы иметь одинаковый размер / интервал, который она обеспечивает.Таким образом, один из ответов на вашу дилемму - уменьшить изображения слайдеров, чтобы они соответствовали сетке.

...