我想在我的div的左上角创建一个三角形,忽略填充并且不会推动我的文本。我已经接近了,但它坚持填充并推动文本。这是我现在所拥有的图像。需要在我的div的左上角创建一个三角形
现在,蓝三角是继我5px的填充和过来,因此不居中推动绿色方块。 这里是我的相关HTML:
<li class="featured">
<div class="triangle"></div>
<img src="@Url.Content("~/Content/img/brochure.jpg")" alt="brochure" />
<div>
<h2>Brochure</h2>
<p>This is the text under the brochure.</p>
View Brochure<br />
Download PDF<br />
</div>
</li>
而CSS:
section.mainWrap .brochures li.featured
{
width: 42%;
margin: 0 20px 15px;
border: 2px solid #cccccc;
background-color: rgba(255, 255, 255, 0.6);
padding: 4px;
}
section.mainWrap .brochures li.featured .triangle
{
width: 0px;
height: 0px;
border-style: solid;
border-width: 50px 50px 0 0;
border-color: #007bff transparent transparent transparent;
float: left;
z-index: 1;
}
section.mainWrap .brochures li.flRight
{
float: right;
}
section.mainWrap .brochures li h2
{
font-size: 1.2em;
margin: 0 auto;
text-align: center;
}
section.mainWrap .brochures li p
{
font-size: 0.8em;
margin: 5px 0;
height: 30px;
line-height: 100%;
}
section.mainWrap li.brochure
{
width: 184px;
margin: 0;
padding: 2px;
border: 1px solid rgba(255, 255, 255, 0.4);
height: 390px;
}
section.mainWrap li.brochure img, section.mainWrap .brochures li.featured img
{
text-align: center;
margin: 0px auto 0;
display: block;
z-index: 10;
}
位置'li'为相对再定位“triangle'绝对。坦率地说,我根本不会使用div而只是一个伪元素,但这是另一个问题。 –
让容器'位置:相对'和三角形'位置:绝对',这样它就不会影响其余的内容。 –