【CSS】响应式图片_html/css_WEB-ITnose
原图:(宽1680px,高1050px)
可是,我们平时做网站的时候当中的图片大于可是窗口时,就会出现横的滚动条、图片被截断的情况,如下图所示:
这时候我们可以使用响应式技术来解决:
响应式图片就是当浏览器屏幕窗口大小改变时,图片会随着窗口大小的改变而改变,不会出现图片被截断或出现横滚动条。
HTML代码:<img src="/static/imghw/default1.png" data-src="1.jpg" class="lazy" alt="””/">
CSS代码:
img{ width: 100%; /*设定为百分比那就OK*/ max-width: 100%; /*为了保证图片不被拉伸,可加上此CSS属性*/ }
效果:
上面示例是插入img标签的情况,那么背景图片是怎么处理呢?
HTML代码:
<div class="backgroundImgShow"> <p class="text">12111111111111111444444444444444444444444444445555555555555</p> </div>
CSS代码:
body,div,p{ margin: 0; padding: 0; }.backgroundImgShow { background: url(1.jpg) no-repeat 50% 50%; }.text{ color: white; word-wrap: break-word; font-size: 30px; }
这时候我们可能会想到为内容区设定与背景图片同样的高度,如我的示例图片是1680px*1050px,那么我的CSS height值可设为1050px;
body,div,p{ margin: 0; padding: 0; } .backgroundImgShow { background: url(1.jpg) no-repeat 50% 50%; <strong><span style="max-width:90%"> -webkit-background-size: 100%; background-size: 100%; height: 1050px;</span></strong> } .text{ color: red; word-wrap: break-word; font-size: 30px; }
这时候去掉高度,且修改CSS代码为:
body,div,p{ margin: 0; padding: 0; } .backgroundImgShow { background: url(1.jpg) no-repeat 50% 50%; -webkit-background-size: 100%; background-size: 100%;<span style="white-space:pre"> </span><strong><span style="color:#ff0000;">padding-top: 62.5%; /* 1050/1680=0.625 即高度除以宽度,可以解决背景图片的比例问题 */</span></strong> } .text{ color: red; word-wrap: break-word; font-size: 30px; }
可以看到图片上面仍然会出现一点白边,且文字并不完全在图片里面,这时候我们可以更进一步优化,我们可以把background-size: 100%;修改为background-size: cover;意思就是背景图片填满包装它的容器,并且按比例缩放。效果图:
可是文字由于上面设置了padding-top:62.%;所以会有很大的上边距,可以设置margin-top:-62.5%;来取消边距。最终图:
最终CSS代码:
body,div,p{ margin: 0; padding: 0; } .backgroundImgShow { background: url(1.jpg) no-repeat 50% 50%; -webkit-background-size: cover; background-size: cover; padding-top: 62.5%; } .text{ color: red; margin-top: -62.5%; word-wrap: break-word; font-size: 30px; }
注:虽然能够通过响应式的方式使得图片在不同大小的屏幕也能等比例缩放,大图片(分辨率高)在较小的屏幕上加载浏览时(如手机),有WiFi的时候加载速度区别不大,但是没WiFi的情况下要加载这么大的图片就很吃力了。这时候可以使用媒体查询,使用较小(分辨率低)的图片代替大图,加载就会快一点,提升用户体验。
Author:致知
Sign:路漫漫其修远兮,吾将上下而求索。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

WebDevelovermentReliesonHtml,CSS和JavaScript:1)HTMLStructuresContent,2)CSSStyleSIT和3)JavaScriptAddSstractivity,形成thebasisofmodernWebemodernWebExexperiences。

HTML、CSS和JavaScript在Web開發中的作用分別是:1.HTML定義網頁結構,2.CSS控製網頁樣式,3.JavaScript添加動態行為。它們共同構建了現代網站的框架、美觀和交互性。

HTML的未來趨勢是語義化和Web組件,CSS的未來趨勢是CSS-in-JS和CSSHoudini,JavaScript的未來趨勢是WebAssembly和Serverless。 1.HTML的語義化提高可訪問性和SEO效果,Web組件提升開發效率但需注意瀏覽器兼容性。 2.CSS-in-JS增強樣式管理靈活性但可能增大文件體積,CSSHoudini允許直接操作CSS渲染。 3.WebAssembly優化瀏覽器應用性能但學習曲線陡,Serverless簡化開發但需優化冷啟動問題。

HTML的未來充滿了無限可能。 1)新功能和標準將包括更多的語義化標籤和WebComponents的普及。 2)網頁設計趨勢將繼續向響應式和無障礙設計發展。 3)性能優化將通過響應式圖片加載和延遲加載技術提升用戶體驗。

HTML、CSS和JavaScript在網頁開發中的角色分別是:HTML負責內容結構,CSS負責樣式,JavaScript負責動態行為。 1.HTML通過標籤定義網頁結構和內容,確保語義化。 2.CSS通過選擇器和屬性控製網頁樣式,使其美觀易讀。 3.JavaScript通過腳本控製網頁行為,實現動態和交互功能。

HTML是構建網頁結構的基石。 1.HTML定義內容結構和語義,使用、、等標籤。 2.提供語義化標記,如、、等,提升SEO效果。 3.通過標籤實現用戶交互,需注意表單驗證。 4.使用、等高級元素結合JavaScript實現動態效果。 5.常見錯誤包括標籤未閉合和屬性值未加引號,需使用驗證工具。 6.優化策略包括減少HTTP請求、壓縮HTML、使用語義化標籤等。

HTML的作用是通過標籤和屬性定義網頁的結構和內容。 1.HTML通過到、等標籤組織內容,使其易於閱讀和理解。 2.使用語義化標籤如、等增強可訪問性和SEO。 3.優化HTML代碼可以提高網頁加載速度和用戶體驗。

HTMLISNOTAPROGRAMMENGUAGE; ITISAMARKUMARKUPLAGUAGE.1)htmlStructures andFormatSwebContentusingtags.2)itworkswithcsssforstylingandjavascript for Interactivity,增強WebevebDevelopment。
