我正在制作一个网站,但我遇到了问题。我在屏幕的整个宽度上制作了一个滑块,但是我希望将小图片用于小分辨率,对于大分辨率则使用更大的图片。我的滑块中的图像是用html编写的。这是可能的,我该怎么做?在不同的分辨率下使用其他图片
这是我的网站:http://www.yannickluijten.be
我正在制作一个网站,但我遇到了问题。我在屏幕的整个宽度上制作了一个滑块,但是我希望将小图片用于小分辨率,对于大分辨率则使用更大的图片。我的滑块中的图像是用html编写的。这是可能的,我该怎么做?在不同的分辨率下使用其他图片
这是我的网站:http://www.yannickluijten.be
您应该调查CSS媒体查询。它们允许您根据浏览器的属性(包括窗口大小)设置特定的样式(或导入不同的样式表)。
这个答案不是很有帮助,虽然他指定他的图像被“硬编码”为“img”标签。在评论中他还表示他不想要多样式表解决方案。 – Hubro 2012-08-03 15:38:19
@Codemonkey虽然我同意这是他说的,我真的不认为OP知道他想要什么。他问了一个问题,并表示他没有任何线索,那么当一个完全有效的解决方案给出时,他不是说他想要什么,但没有提供任何他想要的信息。 – 2012-08-03 15:40:23
我只是不知道我该怎么做,但不同的样式表不是我要做的。 – user1211376 2012-08-03 15:45:40
从你的最新评论,我建议以下解决方案。
要么使用媒体查询像其他答案(虽然这仅仅是由CSS3支持)或:
我可能会使用JavaScript。检测用户屏幕分辨率,然后根据屏幕分辨率将src插入图像标签。您可以将分辨率范围的地图保留为img srcs。
你也许有一个你说过的例子吗?我没有使用JavaScript的经验。 – user1211376 2012-08-03 15:48:25
我建议去看javascript,搜索javascript屏幕分辨率,通过id查找元素和javascript设置属性。这将为您提供所有您需要的信息。 – 2012-08-03 15:50:27
奥克,谢谢! – user1211376 2012-08-03 15:51:06
我的建议是去掉愚蠢的img
标签,而使用div
与背景图片。但如果你是坚定的关于使用img
标签我想你可以保存你的图像是这样的:
./ |-- some_image_1024x500.png |-- some_image_512x250.png |-- another_image_1024x500.png |-- another_image_512x250.png |-- third_image_1024x500.png |-- third_image_512x250.png |-- ...
然后添加该应根据窗口大小改变图像分辨率图像标记一类特殊的,比如<img class="width-sensitive" src="images/some_image_1024x500.png" />
然后写一个JavaScript函数来检查窗口的大小和执行图像源替换,例如(伪代码使用jQuery):
// This function is terribly unDRY and ugly but it's just an example
function process_image_sizes() {
var images = $('img.width-sensitive');
if($(window).width() > 800) {
images.each(function(index, element) {
var src = $(element).prop('src');
if(/512x250\.png$/.test(src)) {
$(element).prop('src', src.replace('512x250', '1024x500'));
}
}
}
else {
images.each(function(index, element) {
var src = $(element).prop('src');
if(/1024x500\.png$/.test(src)) {
$(element).prop('src', src.replace('1024x512', '512x250'));
}
}
}
}
然后在页面加载运行功能一次:
$(function() { process_image_sizes(); });
每当调整窗口大小:
$(window).on('resize', process_image_sizes);
我希望这是一些帮助。
编辑:只是作为一种事后,你大概要开始默认的小图像,然后切换到在调整尺寸较大的图像。我仍然建议只使用CSS。
“傻的img标签”?请解释。 – 2012-08-03 15:56:24
@JonTaylor:我认为使用'img'标签进行网站设计是愚蠢的。这些东西应该放在样式表中! :-) – Hubro 2012-08-03 15:58:47
呃什么?你是说你不应该使用'img'标签?如果是这样的话,那么'img'标签中的要点是什么?我认为图像本身不应该是样式表的责任,我认为屏幕上显示的图像,尺寸等外观是样式表的责任。 – 2012-08-03 16:11:19
到目前为止你看到了什么?它是完全可能的,但在我们都给出答案之前,很高兴看到您尝试了什么。 – 2012-08-03 15:27:41
我发现了一些不同的样式表,但那不是我想要的。我其实不知道我该怎么做。 – user1211376 2012-08-03 15:33:40
那你想要什么呢? – 2012-08-03 15:39:11