2012-08-27 32 views
4

當我重疊(觸摸)div時,有沒有辦法使1px邊框不成爲2像素。而且我知道我可以在邊的兩邊放一個邊框,但是div的一邊不會有邊框。順便說一下,我正在使用jQuery Masonry。重疊1 px使邊框更粗的邊框

+0

如果您正在使用砌體......您可能正在進行響應式設計/所以請務必查看:第n類型---請查看這些http://css-tricks.com/how-nth-child -works/http://css-tricks.com/the-difference-between-nth-child-and-nth-of-type/ – sheriffderek

+0

你的代碼在哪裏?我們在哪裏可以看到您嘗試過的?重疊或接觸?什麼是「1px邊框」? – Systembolaget

回答

6

是右邊的格會是這個樣子

 border: 1px solid #fff; 
    border-left: none; 

第二左邊框將覆蓋剛穿上有

編輯左邊界:

OK,因爲你使用jQuery masonary - 像這樣做

  .container { 
       width:50px; 
       height:80px; 
       border:1px solid black; 
       margin-right: -1px; 
       margin-bottom: -1px; 
       } 

overlapp我提到的方法將工作

+0

這可以工作,但左邊框說一個沒有旁邊的div是不存在的。 [鏈接](https://www.dropbox.com/s/mnk27pth7fi4cwj/Screen%20Shot%202012-08-26%20at%208.26.06%20PM.png) –

+0

他們將需要不同的類,如「盒子「(沒有右邊框),那麼另一個類叫做」last「,所以當它到了最後,並且你需要一個正確的邊框,那麼class =」box last「 –

+0

如果你聽說過jQuery Masonry t之前),它使用divs,而不是li's,所以這也不起作用。並且它以半隨機的方式放置div,所以它需要JS,我相信。 –

2

結合邊界和邊距(即使有邊框)是棘手的,因爲你的佈局取決於容器的寬度。這是更好的孩子加入到位於由磚石和風格的元素...

.container .post { 
    float: left; 
    width: 240px; 
} 

.container .text { 
    outline: 1px solid #999; 
    padding: 10px; 
    margin: 0 1px 1px 0; 
} 

outline允許邊境出現了「外」,這使得它們更容易重疊DIV

http://jsfiddle.net/4xmUY/

(如果你碰巧使用這個答案,請接受斯科特的答案,因爲這應該是對他的答案的評論,但解釋不適合那裏)。

+0

這幾乎是完美的。不過,這個佈局只有3列,而不是4。 –

+0

您可以將容器寬度提升至〜964像素或使用我更新的答案(添加一個子元素)。更強大的解決方案是我更新的答案。 – Duopixel