我想在HTML中编写一个代码框,就像我在图片中添加的一个框一样,右上角有蓝框切割。
我想知道我是否可以这样做,或者是否必须将其作为图像。 请告诉我。
答案 0 :(得分:2)
你可以用css制作它: http://jsfiddle.net/Cqnaa/
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>Hello</title>
<style>
body{
margin: 20px;
}
.box:after {
content: "";
position: absolute;
top: 0px;
right: 0px;
border-width: 20px 20px 0 0;
border-style: solid;
border-color: #fff transparent;
display: block;
width: 0;
}
.box {
color: #fff;
background-color: #bbd0ed;
position: relative;
height: 80px;
width: 150px;
padding: 10px;
}
</style>
</head>
<body>
<p class="box">
Hello!
</p>
</body>
</html>
gl hf
答案 1 :(得分:0)
这可以通过CSS完成:
.box-corner {
/* You would prefer a png for the transparent background where the corner is */
background-image: url('box-background.jpg');
padding: 10px 10px 0 0; /* Assuming the corner is 10x10 */
}
然后像这样实例化它:
<div class="box-corner">Content</div>
答案 2 :(得分:0)
使用具有某种背景颜色的高度和宽度的DIV。然后添加一个带背景的子div,因为图像中有裁剪。将子div的位置设置为relative,将top和right设置为0.如下所示
#childDiv{
position : relative;
background-image : url("cropedMark.png)"
width : "Some width";
height : "Some height";
top : 0;
right : 0
}
希望这有帮助。
答案 3 :(得分:0)
这是一个确切的答案。 http://jsfiddle.net/swGvr/
<style>
#target {
border-top: 30px solid transparent;
border-left: 30px solid #4c4c4c;
border-right: 30px solid #4c4c4c;
border-bottom: 30px solid #4c4c4c;
width:200px;
height:100px;
}
#target > div {
background-color:#4c4c4c;
width:230px;
height:130px;
margin-top:-30px;
margin-left:-30px;
position:absolute;
}
</style>
<div id="target"><div></div></div>
有两个CSS共享宽度和高度。 您也可以使用jQuery自动生成另一个。