2016-05-12 66 views
0

我做了我的第一個網站頁面,它看起來像這樣: pic1跨邊界顯示怪異

要做到這一點很好的標題和紅色border圍繞我使用下面的代碼:

div { 
 
    width: 100%; 
 
    height: 100%; 
 
    margin: 0 auto; 
 
    padding-top: 25%; 
 
    font-family: 'Roboto', sans-serif; 
 
    color: white; 
 
    text-align: center; 
 
} 
 
div span { 
 
    border: 2px solid rgba(250, 0, 0, 0.75); 
 
    padding: 5px; 
 
} 
 
div h1 { 
 
    text-transform: uppercase; 
 
    margin: 0; 
 
    font-size: 4rem; 
 
}
<div> 
 
    <h1><span>This is a title</span></h1> 
 
</div>

但是,當我有一個更長的標題,border顯示很奇怪,像這樣: pic2

在這種情況下,我會怎樣的風格,標題,以獲得唯一一個border所有文字,就像在第一張照片?

回答

1

span添加borderh1,而不是將其取出,並設置display:inline-blockh1

div{ 
 
    width: 100%; 
 
    height: 100%; 
 
    margin: 0 auto; 
 
    padding-top: 25%; 
 
    font-family: 'Roboto', sans-serif; 
 
    color: black; 
 
    text-align: center; 
 
} 
 
div h1 { 
 
    text-transform: uppercase; 
 
    margin: 0; 
 
    font-size: 4rem; 
 
    /* add this*/ 
 
    border: 2px solid rgba(250, 0, 0, 0.75); 
 
    padding: 5px; 
 
    display:inline-block 
 
}
<div> 
 
    <h1><span>This is a title</span></h1> 
 
</div>


或如我前面提到的(但你確實說過不工作你) - 見revision

display:inline-blockspan因爲跨度是一個內聯元素

div span { 
 
    border: 2px solid rgba(250, 0, 0, 0.75); 
 
    padding: 5px; 
 
    display:inline-block 
 
} 
 
div h1 { 
 
    text-transform: uppercase; 
 
    margin: 0; 
 
    font-size: 4rem; 
 
}
<div> 
 
    <h1><span>This is a title</span></h1> 
 
</div>

+0

我不喜歡這因爲邊框寬度爲100%:http://i.imgur.com/ed7vOud.jpg – Alex

+0

@Alex查看我更新的答案 – dippas

+0

邊框是相同的,寬度爲100%。 :( – Alex

0

您需要更改spandisplay屬性爲inline-block

div span{ 
    border:2px solid rgba(250,0,0,.75); 
    display:inline-block; 
    padding:5px; 
}