2013-07-29 81 views
6

我想從屏幕左側到中心div的末端製作1 px線。 divmargin: auto;爲中心。從屏幕左側到中心div末端的線

此圖片顯示它應該是什麼樣子:

example

+1

您可以使用


標籤,但你需要知道DIV /它的長度停止。 – andrewb

+0

分享你的jsfiddle –

+0

你能否提供一個帶有你的標記的http://jsfiddle.net/? –

回答

3

他再另一種解決方案,它是跨瀏覽器http://jsfiddle.net/9qrSy/3

<div class="inner"></div> 
<div class="wrapp"></div> 

css 



    body { 
    padding:8px; 
} 
div.wrapp { 
    width:300px; 
    height:300px; 
    border:2px solid green; 
    margin:auto; 
    position:relative; 
} 
div.wrapp:before { 
    content:''; 
    position:absolute; 
    width:100%; 
    height:1px; 
    right:0; 
    top:-6px; 
    background:blue; 
    z-index:1; 

} 
.inner { 
    width:50%; 
    float:left; 
    position:absolute; 
    height:1px; 
    left:0; 
    top:12px; 
    background:blue; 


} 
+0

如果將'top:-5px'更改爲'top:5px',您可以看到這是如何工作的。藍線由兩條重疊線組成:從窗口左邊緣到中心的一條線,以及從'div'的左邊緣到右邊緣的一條線。 –

+0

縮小屏幕,它打破了,我寧願@Vucko的解決方案,但再次,支持是冒險的。 –

+0

其工作和它的一個非常方便的解決方案 – Hushme

7

下面是一個使用calc一個例子:

.box{ 
    width:200px; 
    height:200px; 
    border:1px solid blue; 
    margin:0 auto; 
} 

.line{ 
    border: 1px solid red; 
    width: calc(((100% - 200px)/2) + 200px); 
} 

JSFiddle

Browser support

+1

是否可以在沒有calc的情況下進行? – rafal235

+1

你需要以某種方式計算'width'而不用'calc'我懷疑這是可能的(對於純粹的CSS **解決方案)。但是如果可以使用JavaScript,那麼您可以輕鬆計算寬度。 – Vucko

+0

其實純粹的CSS解決方案竟然非常簡單,請查看我的回答 –

0

我不知道,如果這個工程在所有瀏覽器,但我相信hr佔用了所有你爲它提供空間。因此,您可以給它一個大的負左邊距,並將其放在居中的div內。而不是hr元素,你也可以使用一個空的div,這可能也可能不會更容易使用。您可以將該div的border-top樣式設置爲更廣泛的邊界類型(例如點分隔)。

<div id="content"> 
    <hr id="bar" /> 
    <div id="realcontent">  
     Something here 
    </div> 
</div> 

使用CSS:

#content { 
    width: 400px; 
    margin: auto; 
    color: white; 
} 

#bar { 
    margin-left: -1000px; 
    margin-bottom: 5px; 
    background: blue; 
} 

#realcontent { 
    background-color: #000000; 
} 
5

這個怎麼解決呢?沒有額外的標記需要,跨瀏覽器的,並且不依賴於元素的寬度

#content { 
    width:400px; 
    height: 200px; 
    margin:auto; 
    position: relative; 
} 

#content:before{ 
    content: ''; 
    height: 1px; 
    background: red; 
    position: absolute; 
    top: -5px; 
    right: 0; 
    width: 999%; /*a large number*/ 
} 

Demo fiddle

+0

當頁面在瀏覽器是縮小其掙脫出來 – Hushme

+0

是實現這一目標 –

+0

是的,我告訴你,所有的方法都很好,我真的很喜歡這裏的人發表他們給多個解決方案一樣的問題 – Hushme