2009-04-08 4 views
3

필자는 가장 최근 프로젝트의 목록 기반 탐색 모음을 만들었으며 탐색의 각면에 두 개의 정보 막대를 추가했습니다. 그것은 파이어 폭스와 IE에서 원하는대로 나오고 있지만 이상하게도 사파리가 작동하고 있습니다. 탐색 막대와 오른쪽 정보 표시 줄 사이에 큰 공간을 만들고 있습니다.Safari에서 CSS 간격 문제가 발생합니까?

CSS

body{ 
    background-color:#4c7094; 
    background-image: url(images/bg.gif); 
    background-repeat:repeat-x; 
    font-size:.9em; 
    color:#FFF; 
    margin-top:0px; 
    font-family: Tahoma, Geneva, sans-serif; 
} 

#nav { 
    float:left; 
    padding: 0px 0px 0px 3px; 
    margin: 0px 0px 0px 0px; 
    list-style:none; 
     border:0px solid #000; 
} 

#nav li { 
    float:left; 
    margin: 3px 3px 0px 0px; 
    font-family:Tahoma, Geneva, sans-serif; 
    background-color:#e7ebf0; 
    border:3px double; 
    display: inline; 
    border-color:#99aabb; 
} 

#nav a { 
    float:left; 
    display: block; 
    color:#1d4c7b; 
    padding: 5px 15px 5px 15px; 
    font-size: .8em; 
    vertical-align:middle; 
    text-decoration:none; 
    font-family: Georgia, "Times New Roman", Times, serif; 
} 

#nav a:hover { 
    float:left; 
    display: block; 
    color:#FFF; 
    padding: 5px 15px 5px 15px; 
    font-size: .8em; 
    background-color:#5b7290; 
    vertical-align:middle; 
    text-decoration:none; 
    font-family: Georgia, "Times New Roman", Times, serif; 
} 

#phonebar{ 
    padding: 0px 6px 9px 6px; 
    background-image: url(images/phonebg.gif); 
    background-repeat: repeat-x; 
    background-color:#335b83; 
    color:#FFF; 
    float:left; 
    border:0px solid #000; 
    width:15%; 
    text-align:center; 
} 

#asseenbar{ 
    padding: 0px 9px 9px 6px; 
    margin-right: 0px; 
    background-image: url(images/phonebg.gif); 
    background-repeat: repeat-x; 
    background-color:#335b83; 
    color:#FFF; 
    float:right; 
    display:inline; 
    border:0px solid #000; 
    width:19.7em; 
    text-align:center; 
} 

h2 { 
    font-size:1.5em; 
    margin: 0px 0px 0px 0px; 
    padding: 0px 0px 0px 0px; 
    display: inline; 
    font-family:Georgia, "Times New Roman", Times, serif; 
} 

#phone { 
    font-size:1em; 
    margin: 0px 0px 0px 0px; 
    padding: 8px 0px 0px 0px; 
    font-family:"Times New Roman", Times, serif; 
} 

#asseen { 
    font-size:.8em; 
    margin: 0px 0px 0px 0px; 
    padding: 9px 0px 0px 5px; 
    text-align:left; 
    font-family:"Times New Roman", Times, serif; 
} 

#menubar{ 
    clear:left; 
    margin-bottom:0px; 
    width:1000px; 
    margin-left:auto; 
    margin-right:auto; 
    background-color:#FFF; 
    height:40px; 
} 

#content{ 
    margin-right:auto; 
    margin-left:auto; 
    background-color:#FFF; 
    width:975px; 
    height:890px; 
    padding: 20px 5px 5px 20px; 
    border:0px solid; 
    border-color:#4c7094; 
    color:#333; 
} 

HTML :

<body> 
<center> <img src="images/banner.jpg" width="1000" height="72" /></center> 
<div id="menubar"> 
<div id="phonebar"> 
<p id="phone">888-325-1924</p> 
</div> 
    <ul id="nav"> 
<li><a href="#">HOME</a></li> 
<li><a href="#">WHAT WE BUY</a></li> 
<li><a href="#">ABOUT US</a></li> 
<li><a href="#">LOCATIONS</a></li> 
<li><a href="#">CONTACT US</a></li> 
</ul> 
<div id="asseenbar"> 
<p id="asseen">As seen on CNN and NBC</p> 
</div> 
</div> 
<div id="content">Welcome to Georgia Buying Group</div> 
</body> 

나는 시간이 싸우는 내가 거기에 누군가가 나에게 손을 줄 수있는 것으로 기대하고 CSS에 새되고있다! 어떤 조언을 부탁드립니다! 감사합니다 :)

  • 크리스

편집 : 내 문서 타입은 과도하다 :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

죄송

편집 -----------

모두 변경되었습니다. 단위는 픽셀이지만 문제는 여전히 제시되고 있습니다. 이제는 내 맥북에서 사파리가 잘 보이지만 내 PC의 사파리 나 파이어 폭스에서는 문제가되지 않는다. 그것은 너무 많이 확장되어 한 줄 아래로 밀려 나옵니다. 여기

내 CSS입니다 : 그것은 여기에서 찾을 수 있습니다

body{ 
    background-color:#4c7094; 
    background-image: url(images/bg.gif); 
    background-repeat:repeat-x; 
    font-size:.9em; 
    color:#FFF; 
    margin-top:0px; 
    font-family: Tahoma, Geneva, sans-serif; 
} 

#nav { 
    float:left; 
    padding: 0px 0px 0px 3px; 
    margin: 0px 0px 0px 0px; 
    list-style:none; 
    border:0px solid #000; 
} 

#nav li { 
    float:left; 
    margin: 3px 3px 0px 0px; 
    font-family:Tahoma, Geneva, sans-serif; 
    background-color:#e7ebf0; 
    border:3px double; 
    display: inline; 
    border-color:#99aabb; 
} 

#nav a { 
    float:left; 
    display: block; 
    color:#1d4c7b; 
    padding: 5px 15px 5px 15px; 
    font-size: .8em; 
    vertical-align:middle; 
    text-decoration:none; 
    font-family: Georgia, "Times New Roman", Times, serif; 
} 

#nav a:hover { 
    float:left; 
    display: block; 
    color:#FFF; 
    padding: 5px 15px 5px 15px; 
    font-size: .8em; 
    background-color:#5b7290; 
    vertical-align:middle; 
    text-decoration:none; 
    font-family: Georgia, "Times New Roman", Times, serif; 
} 



h2 { 
    font-size:1.5em; 
    margin: 0px 0px 0px 0px; 
    padding: 0px 0px 0px 0px; 
    display: inline; 
    font-family:Georgia, "Times New Roman", Times, serif; 
} 


#phonebar{ 
    padding: 0px 6px 9px 6px; 
    background-image: url(images/phonebg.gif); 
    background-repeat: repeat-x; 
    background-color:#335b83; 
    color:#FFF; 
    float:left; 
    border:0px solid #000; 
    width:120px; 
    text-align:center; 
} 

#asseenbar{ 
    padding: 0px 9px 9px 6px; 
    margin-right: 0px; 
    background-image: url(images/phonebg.gif); 
    background-repeat: repeat-x; 
    background-color:#335b83; 
    color:#FFF; 
    float:right; 
    display:inline; 
    border:0px solid #000; 
    width:326px; 
    text-align:center; 
} 

#phone { 
    font-size:1em; 
    margin: 0px 0px 0px 0px; 
    padding: 8px 0px 0px 0px; 
    font-family:"Times New Roman", Times, serif; 
} 


#asseen { 
    font-size:.8em; 
    margin: 0px 0px 0px 0px; 
    padding: 9px 0px 0px 5px; 
    text-align:left; 
    font-family:"Times New Roman", Times, serif; 
} 

#menubar{ 
    clear:left; 
    margin-bottom:0px; 
    width:1000px; 
    margin-left:auto; 
    margin-right:auto; 
    background-color:#FFF; 
    height:40px; 
} 

#content{ 
    margin-right:auto; 
    margin-left:auto; 
    background-color:#FFF; 
    width:975px; 
    height:890px; 
    padding: 20px 5px 5px 20px; 
    border:0px solid; 
    border-color:#4c7094; 
    color:#333; 
} 

;

http://www.christopherbier.com/gbg

어떤 도움에 감사드립니다!

+0

실제 사이트의 doctype이 지정되어 있습니까? (그렇지 않다면, 표준 기반 렌더링을 얻기 위해 표준을 추가하는 것을 고려해야합니다.) – scunliffe

+0

doctype을 포함하십시오. – inspite

+0

내 doctype은

답변

2

링크 된 사이트의 상태에 따라 이미 조정 한 것 같지만 다른 브라우저에서 제대로 작동하지 않습니다.

내가 가장 좋은 건 대신의 왼쪽과 오른쪽 부분에서의 전체 #menubar 사업부에 배경으로 그 phonebg.gif 이미지를 설정 한 다음 #nav에 흰색 배경을 추가하는 것입니다 생각합니다.

그런 식으로 올바른 div에 너비를 설정하지 않아도됩니다 (또는 적어도 3 가지 부분이 전체 너비와 일치하는지 정확하게 판단해야하는 너비가 아닙니다).

+0

좋은 아이디어, 감사합니다! –

2

나는 사파리 그래서 (내가 크롬을 사용하고 있지만), 테스트 할 수 없어,하지만 문제는 아마도 즉 모든 픽셀을 시도 (일관성있는 단위를 사용하는

#phonebar { 
    padding: 0px 6px 9px 6px; 
    width:15%; 
} 

#asseenbar{ 
    padding: 0px 9px 9px 6px; 
    width:19.7em; 
} 

#nav li { 
    margin: 3px 3px 0px 0px; 
    border:3px double; 
} 

#nav a { 
    padding: 5px 15px 5px 15px; 
} 

시도에서오고, 그리고 당신이 그것을 얻었을 때 용감하게 느껴진다면 %를 가지고 혼란스럽게 할 수 있습니다.) 그리고 컬럼 너비의 합이 컨테이너 div #menubar의 너비를 초과하지 않는지 확인하십시오.

또한 DOCTYPE을 지정하거나 다른 브라우저간에 문제가 발생할 수 있습니다. 특정 docType을 올바르게 선언하지 않으면 방문객 브라우저는 가능한 한 가장 느슨한 docType 또는 "quirks"모드 docType을 적용하여 렌더링을 느리게하는 "추측"을해야합니다.

DOCTYPE을 지정하지 않으면 많은 문제가 발생할 수 있습니다.

+0

고정 폭을 설정하고 싶지 않으므로 유연하게 조정할 수 있습니다. 1000px nav 막대를 ems 또는 %로 채우는 방법을 유연하게 지정하려면 어떻게해야합니까? 탐색 주위에 3 픽셀 경계를 유지하려고합니다. 내가 너무 높게 설정하면 효과가 없을 것이다. www.christopherbier.com/gbg는 사이트입니다. 고맙습니다! –

+0

유연성이 없기 때문에 1000px로 해결할 수 있습니다! – inspite

+0

사용자가 텍스트 크기를 늘리면 단추, 정보 표시 줄 등이 넘치지 않도록하고 싶습니다. –

0

목록 주위에 div를 추가하십시오.

+0

UL은 DIV와 같은 역할을합니다. div를 사용하지 않았습니다. –

관련 문제