Css-用颜色(内容)填充区域

Css-用颜色(内容)填充区域,css,printing,Css,Printing,相关的: 我知道浏览器在打印时不会呈现CSS背景 我正在用divs制作一个简单的条形图 <div style="width: 10px; height: 43%; background-color: blue;" title="Series A - 43%">A</div> <div style="width: 10px; height: 55%; background-color: green;" title="Series B - 55%">B</

相关的:

我知道浏览器在打印时不会呈现CSS背景

我正在用divs制作一个简单的条形图

<div style="width: 10px; height: 43%; background-color: blue;" title="Series A - 43%">A</div>
<div style="width: 10px; height: 55%; background-color: green;" title="Series B - 55%">B</div>
A
B

有没有办法在图形中“着色”以使其正确打印?

您完全可以在DIV中定位图像。您将无法使用百分比,您需要像素:

<div style="width: 10px; height: 43%; background-color: blue;position:relative" title="Series A - 43%">
<span>A</span><img style="position:absolute;top;0px;left:0px;width:10px;height:43px" src="green.gif /></div>

A.
您可能需要将标签放在一个范围内,并设置图像与标签的z索引。如果您使用像“green”这样的类名,那么您可能会编写一些JavaScript,在自动读取类名和DIV维度的基础上动态插入IMG


这不是一个简单的解决方案,但值得一试。或者,还有一些实用程序将在服务器上生成PDF,然后将其提供给下载或打印。

确定当前正在执行以下操作:

<div style="width: 10px; border-bottom: 43px solid blue;" title="Series A - 43%"><span style="position: absolute;">A</span></div>
A
这将放弃百分比高度,而改为像素高度。 css边框打印正常。 我正在做一些进一步的css定位,以将内联文本('A')移动到正确的位置


这方面有什么进展吗?

我想你已经掌握了使用边界的方法。您应该能够继续使用宽度/高度百分比。尝试使用一些负边距来定位条形标签

<hmtl>
<head>
<style type="text/css"> 
    .graph { border:solid 1px #aaa; background-color:#eee; height:200px; width:260px; }
    .graph h1 { color:#000; font-size:1.4em; }
    .graph p { color:#fff; }
    .graph div {  margin-top:8px; } 
    .graph div div { margin-top:-10px; }    

</style>
</head>
<body>

    <div class="graph">
        <h1>Graph 1.1</h1>
        <p>Graph description</p>

        <div style="height:0px; width:43%; border-top:solid 7px blue; border-bottom:solid 7px blue;"  title="Series A - 43%"><div>A</div></div>
        <div style="height:0px; width:55%; border-top:solid 7px lime; border-bottom:solid 7px lime;" title="Series B - 55%"><div>B</div></div>
        <div style="height:0px; width:10%; border-top:solid 7px pink; border-bottom:solid 7px pink;" title="Series c - 10%"><div>C</div></div>
        <div style="height:0px; width:90%; border-top:solid 7px orange; border-bottom:solid 7px orange;" title="Series D - 90%"><div>D</div></div>
    </div>
</body>
</html>

.graph{边框:实心1px#aaa;背景色:#eee;高度:200px;宽度:260px;}
.graph h1{颜色:#000;字体大小:1.4em;}
.graph p{color:#fff;}
.graph div{margin top:8px;}
.graph div div{margin top:-10px;}
图1.1
图形描述

A. B C D
它是算法着色的,我还没有办法生成color\u field.gif?color=ff0022..完美-这个解决方案可以很容易地适应我的原始竖曲线图,因为条形图的大小(在您的情况下是宽度)与边框正交。您甚至可以应用文本对齐:居中;到你的文本