更新,允許背景圖片顯示通過
您可以通過使用一個僞元素使加價有點更緊如下:
<div class="wrapper">
<div class="inner">Photoshop</div>
</div>
,並使用以下CSS造型:
div.wrapper {
color:#82439a;
font-size: 16px;
font-weight: bold;
font-family: tahoma;
line-height: 180%;
background: red url(http://placekitten.com/1000/500) no-repeat left top;
overflow: hidden;
}
div.inner {
position: relative;
display: inner;
color: yellow;
padding-right: 0.50em;
border: 1px dotted yellow;
}
div.inner:after {
content: "\A0";
position: absolute;
bottom: 0;
left: 100%;
border-bottom: 5px solid #d71d00;
width: 1000%;
}
演示小提琴:http://jsfiddle.net/audetwebdesign/wE8bC/
如何工作
父元素div.wrapper
可以含有的背景圖像或是透明的並且顯示出一些祖先元素的背景。您需要設置overflow: hidden
。
對於標籤(<div.inner>
),請設置position: relative
,然後生成一個帶底邊的100%寬度僞元素作爲下劃線。使用絕對定位將div.inner:after
置於<div.inner>
(left: 100%
)的右側,並使寬度相對較大。僞元素將觸發溢出條件,但這是通過隱藏父元素中的溢出來處理的。您可以使用填充控制左/右間距。
您可以使用將display
屬性設置爲inline
或inline-block
。如果您使用display: inline
,它將在IE7中工作;根據造型需要調整線條高度。
請注意,生成的內容是一個非中斷空格,十六進制代碼「\ A0」。
支持IE7
如果您需要支持IE7,您將需要一個黑客如果你使用inline-block
如在前面的問題討論:IE7 does not understand display: inline-block
IE7也不支持table-cell
等等一些其他發佈的解決方案將面臨同樣的限制。
IE7不支持表格單元..你的一個很好的解決方案,但我不能使用div.inner背景顏色。我的頁面正文有背景。和我需要100%的寬度,這將是背景圖像的線。 ...你目前的代碼不工作我,我正在尋找..你可以嘗試我的背景圖像作爲線和沒有背景顏色內..謝謝你這麼多 – 2013-04-25 13:23:08
@AccoreLTD我能夠修改的CSS允許通過展示的背景。請檢查更新的答案和小提琴。 – 2013-04-25 15:01:57
@March ...酷男...實際是我想要...看到這個..http://jsfiddle.net/wE8bC/7/你的代碼也可以工作......並支持IE7 ..對吧? – 2013-04-25 15:07:19