最近,我正在为我的website与响应图像作斗争。通常,我对图像的政策是它们不得大于450像素宽,但可能会有小于这个尺寸的图像。
最初,我使用了img
标签,其中包含width
和height
属性,这些属性包含了实际的图像大小。
所以我开始用这个image做一些测试.我不想向浏览器提供这个图片的多个版本(除非一些特定的例外),因为它们没有那么宽.所以我决定用这个代码:
<img src="assets/img/software-developer.jpeg" alt="Some Stuff" srcset="assets/img/software-developer.jpeg 450w" sizes="(max-width: 449px) 75vw, (min-width: 450px) 450px"
这段代码运行得很好,因为如果屏幕大小(用Chrome Developer Tools测试)小于450 px,则只需调整图像大小(75 vw),否则就按原样使用。
然而,我也使用页面速度来控制性能。考虑到我将我的WordPress网站从付费主机转移到Gihub页面上的Jekyll,有两个原因:
- 成本(付费Web主机与免费Github页面)
- 性能(考虑到我的内容99%是静态的,使用WordPress时性能非常差)
现在,如果我用Page Speed测试页面,它会告诉我指定width
和height
属性。我认为对于Page Speed来说,它们很重要,因为浏览器无需下载即可快速计算图像尺寸,并且无需等待所有图像下载即可渲染页面。但是,宽度和高度似乎不太适合当今的响应世界。
所以我的问题是:是否可能同时具有widht/height
和srcset/sizes
?
在我上面的代码中,我希望使用100 vw而不是75 vw,但是我的图片被裁剪了。我想这可能是由于填充/边距?我说的对吗?
1条答案
按热度按时间o2g1uqev1#
The " width & height" image attribute fixed the image's dimensions this thing you can see in my code snippet. So it would help if you used CSS to style your photos to make them responsive (automatically scaleable on big and small screens.).
Try following the CSS code:
Set class for the image. Then set width whatever you want, after that set max-width: 100%; and height: auto; which will help the browser to increase and decrease the height of the image when the image needs to be scaled down on smaller than 420px screens.
Width property will set the image size to 420px when the screen size is bigger than 420px and the max-width: 100%; will make the image responsive, It means when the screen size will less than 420px your image will automatically be adjusted according to your screen with.
You can avoid scrset and width/height image attribute. Use CSS.