2013-07-20 58 views
2

當文本超過父級的100%時,如何使100%寬度跨度的內容不能換行?我曾與whitespace: nowrap;猴子周圍沒有運氣。製作跨度並不包裹在其他具有固定寬度的div內

問題:span.firstname, span.lastname, span.email當它們的內容長於div.name, div.personal, or div.account_view時,會全部包裝文本。我希望3跨度去儘可能長的內容是(沒有換行)。

HTML:

<div class="account_view"> 
    <div class="personal"> 

    <div class="picture"> 
     <img src="example.png" /> 
     <span>Image caption</span> 
    </div> 

    <div class="name"> 
     <span class="first">Firstname</span> 
     <span class="last">Lastname</span> 
     <span class="email">[email protected]</span> 
    </div> 

    </div> 
</div> 

CSS:

div.account_view { 
    display: block; 
    height: auto; 
    width: 700px; 
    padding: 40px; 
    margin: 0 auto; 
    border: 0; 
} 
div.account_view div.personal { 
    margin: 0 auto; 
    clear: both; 
    overflow: hidden; 
    white-space: nowrap; 
} 
div.account_view div.personal div.picture { 
    float: left; 
    display: block; 
    width: 200px; 
    height: 200px; 
    border: 1px solid #aaa; 
    margin: 0 10px 0 0; 
} 
div.account_view div.personal div.picture img { 
    display: block; 
    width: 100%; 
    height: 100%; 
    border: 0; 
    padding: 0; 
    margin: 0; 
} 
div.account_view div.personal div.picture span { 
    display: block; 
    font-size: inherit; 
    text-align: center; 
    margin: 0; 
    position: relative; 
    top: -27px; 
    padding: 5px; 
    background-color: rgba(0,0,0,.4); 
    color: #eee; 
} 
div.account_view div.personal div.name { 
    float: left; 
    position: relative; 
    top: -25px; 
} 

div.account_view div.personal div.name > * { 
    display: block; 
    font-weight: 300; 
    white-space: normal; 
} 
div.account_view div.personal div.name span.first { 
    font-size: 125px; 
    font-weight: 700; 
} 
div.account_view div.personal div.name span.last { 
    position: relative; 
    top: -9px; 
    left: 5px; 
    font-size: 56px; 
} 
div.account_view div.personal div.name span.email { 
    font-size: 29px; 
    position: relative; 
    left: 8px; 
} 

目標:(懸停)

+0

你試圖左浮動? –

回答

4

添加到跨度的CSS white-space: nowrap

此外,您可以使用 text-overflow: ellipsis

得到一個不錯的「...」當文本被切斷

+0

這工作,但我最終改變我的HTML,以便事情更好。不管怎麼說,還是要謝謝你! –

0

給定範圍一個display: blockdisplay: inline-block並設置overflow: hidden

+0

似乎不起作用。文本看起來好像沒有換行,直到div.personal或div.account_view的尺寸變得太大時 –

+0

還指定了跨度的固定高度? (然後使用一行的高度) – Pieter

+0

即使使用'height:1em;',跨度仍然包裝在'div.account_view' –

相關問題