这是我尝试过的:
http://codepen.io/helloworld/pen/DkgbF
请使用谷歌浏览器观看笔,因为在 chrome v28 中,线性渐变(白色三角形/箭头)有效,但它不适用于 Windows 上的 IE10 或 FF22 或 Safari 5.1.7。
这样它在谷歌浏览器中看起来:
为什么它只适用于谷歌浏览器?
<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 循环,然后您将看到最新的 display:table-cell 解决方法破坏了所有内容。希望有帮助。:)