我有一个html select
元素,其中id
为background
,旨在为<div class=”results-area”>
设置背景图像。然后我有一个打印按钮来打印.results-area
内容。
问题是,当我想打印.results-area
时,我需要设置打印时要设置的背景图像,如果我使用CSS @media print
,我不能设置打印的背景规则(基于用户选择)。
有没有别的方法可以做到这一点?
HTML
<select id="background">
<option value="url(picture1.jpg)">picture1</option>
<option value="url(picture2.jpg)">picture2</option>
<option value="url(picture3.jpg)">picture3</option>
<option value="url(picture4.jpg)">picture4</option>
<option value="url(picture5.jpg)">picture5</option>
<option value="url(picture6.jpg)">picture6</option>
</select>
<div class=”results-area”>
...
</div>
<a id="printMe" class="btn btn-warning">Print</a>
字符串
jQuery
$('#background').change(function () {
$('.results-area').css("background-image", $(this).val());
})
$('#printMe').click(function () {
print()
});
型
CSS:
@media print {
.results-area{
background-image: ??????;
}
}
型
3条答案
按热度按时间niwlg2el1#
我解决它的方法如下。
HTML
我将值更改为数字“1-2-3...”,并为每张图片“a-b-c...”添加了一个类。
字符串
CSS
我为每个类指定了自己的
background-image
型
jQuery
型
这感觉像是一种疯狂的方式,但它确实起到了作用。
我希望这对你也有效!
rt4zxlrg2#
将
<style>
标记添加到<head>
并给予一个id:字符串
然后,当您要更改背景图像时,选择该样式标记并设置相应的背景图像:
型
ne5o7dgx3#
使用jquery设置背景图片,默认设置
background-size:0;
,打印介质设置background-size: inherit;