这就是我的尝试:
http://codepen.io/helloworld/pen/DkgbF
请使用谷歌浏览器来观看笔,因为在chrome v28中,线性渐变(白色三角形/箭头)可以工作,但它不适用于IE10或FF22或Safari 5.1.7在Windows上。
这样看起来就像google chrome:
为什么它仅适用于Google Chrome?
<ul class="_7/5Z" style="display: table; height: 100%; float: left; font-size: 7px;background:green;">
<li style="list-style: none;background:blue; display: table-row;">
<div style="height: 99%;padding-left:1%;padding-top:1%;">
<div style="background: red; width: 50%; height: 100%; float: left;">
<div style="height: 100%;" class="segmentTriangle"></div>
</div>
<div class="fontsize vertical-center" style="font-size:20px;height: 100%; background: yellow; width: 50%; float: left;">33333
</div>
</div>
</li>
</ul>
body, html {
width: 100%;
height: 100%;
font-family: arial;
/*overflow: hidden;*/
}
* { /* Every element which has a border or padding value puts this value inside the div */
box-sizing: border-box;
-moz-box-sizing: border-box;
padding: 0;
margin: 0;
}
._7\/5Z {
width: 17.50%;
}
.horizontal-right {
text-align: right;
}
.horizontal-center {
text-align: center;
}
.vertical-center {
vertical-align: middle;
}
.segmentTriangle {
width: 100%;
height: 100%;
left: 0px;
top: 0px;
background: linear-gradient(to right bottom, white 50%, transparent 50%);
background: -o-linear-gradient(to right bottom, white 50%, transparent 50%);
background: -moz-linear-gradient(to right bottom, white 50%, transparent 50%);
background: -webkit-linear-gradient(to right bottom, white 50%, transparent 50%);
background: -ms-linear-gradient(to right bottom, white 50%, transparent 50%);
}
更新
更多信息:
我正在使用knockoutjs将数据绑定数据转换为html。现在想象一下我的ul-tag有一个foreach-binding和ul内的所有内容,这意味着每个li-tag及其内容重复7次,因为这是我的要求。我已经使用您更了解的代码示例更新了我的初始化问题。只需使用我的代码并制作7份li-tag及其内容,并将所有这些内容粘贴到ul-tag中以模仿foreach循环,然后您将看到最新的显示:table-cell变通方法会破坏所有内容。希望有所帮助。 :)