| 
          
         | 
         
          
          
            					 						 响应式 Web 设计 -  显示图片.bg1 { 
 
    width: 100%; 
 
    height:400px; 
 
    background-image:url('/wp-content/uploads/2015/06/img_flowers.jpg');     
 
    background-repeat:no-repeat; 
 
    background-size:contain; 
 
    border:1px solid red;     
 
} 
 
.bg2 { 
 
    width: 100%; 
 
    height:400px; 
 
    background-image:url('/wp-content/uploads/2015/06/img_flowers.jpg');         
 
    background-size:100% 100%; 
 
    border:1px solid red; 
 
} 
 
.bg3 { 
 
    width: 100%; 
 
    height:400px; 
 
    background-image:url('/wp-content/uploads/2015/06/img_flowers.jpg');         
 
    background-size:cover; 
 
    border:1px solid red; 
 
}                  使用 width 属性    如果 width 属性设置为 100%,图片会根据上下范围实现响应式功能:                  范例.img { 
     width:  100%; 
     height:  auto; 
} 
 
	 
     注意在以上范例中,图片会比它的原始图片大。我们可以使用  max-width 属性很好的解决这个问题。               使用 max-width 属性      如果 max-width 属性设置为 100%, 图片永远不会大于其原始大小:               范例.img { 
 
     max-width:  100%; 
     height:  auto; 
}          网页中添加图片 范例.img { 
 
     width:  100%; 
     height:  auto; 
 }         背景图片 背景图片可以响应调整大小或缩放。 
 
         以下是三个不同的方法: 
 
         1. 如果 background-size 属性设置为 "contain", 背景图片将按比例自适应内容区域。图片保持其比例不变: 
 
         这是 CSS 代码:                      范例div { 
     width:  100%; 
     height:  400px; 
     background-image:  url('img_flowers.jpg'); 
     
     background-repeat:  no-repeat; 
     
     background-size:  contain; 
     border:  1px solid red; 
} 
 
	 
 
         2. 如果 background-size 属性设置为 "100% 100%" ,背景图片将延展覆盖整个区域:                                        范例     这是 CSS 代码: 
 
div { 
     width:  100%; 
     height:  400px; 
     
     background-image:  url('img_flowers.jpg'); 
     
    background-size:  100% 100%; 
     border:  1px solid red; 
} 
 
       3. 如果 background-size 属性设置为 "cover",则会把背景图像扩展至足够大,以使背景图像完全覆盖背景区域。 
注意该属性保持了图片的比例,因此背景图像的某些部分无法显示在背景定位区域中。 
 
        这是 CSS 代码:                      范例div { 
     width:  100%; 
     height:  400px; 
     
     background-image:  url('img_flowers.jpg'); 
     background-size:  cover; 
     border:  1px solid red; 
}                  不同设备显示不同图片     大尺寸图片可以显示在大屏幕上,但在小屏幕上确不能很好显示。我们没有必要在小屏幕上去加载大图片,这样很影响加载速度。所以我们可以使用媒体查询,根据不同的设备显示不同的图片。 
 
     以下大图片和小图片将显示在不同设备上: 
 
              
 
                               范例 /* For width smaller than 400px: */ 
 body { 
     background-image:   
 
     url('img_smallflower.jpg');  
} 
 
 /*  
 
	For width 400px and larger: */ 
 @media only screen and (min-width: 400px) { 
     body {  
         
    	 background-image:  url('img_flowers.jpg');  
    } 
} 
 
     你可以使用媒体查询的 min-device-width 替代 min-width 属性,它将检测的是设备宽度而不是浏览器宽度。浏览器大小重置时,图片大小不会改变。              范例 /* 设备小于 400px: */ 
 body { 
     background-image:   
 
     url('img_smallflower.jpg');  
} 
 
 /*  
 
	设备大于 400px (也等于): */ 
 @media only screen and (min-device-width: 400px) { 
     body {  
    	 background-image:  url('img_flowers.jpg');  
    } 
}	                          HTML5 <picture> 元素    HTML5 的  <picture> 元素可以设置多张图片。     浏览器支持           |  元素 |  |  |  |  |  | 
|---|
 |  <picture> |   不支持 |  38.0 |  38.0 |   不支持 |  25.0 |    
 
   <picture> 元素类似于  <video> 和  <audio> 元素。可以设备不同的资源,第一个设置的资源为首选使用的:                      范例< picture > 
   < source  srcset= "img_smallflower.jpg"  media= "(max-width: 400px)" > 
   < source  srcset= "img_flowers.jpg" > 
   < img  src= "img_flowers.jpg"  alt= "Flowers" > 
< /picture > 
 
	 
 
         srcset 属性的必须的,定义了图片资源。 
 
         media 属性是可选的,可以在媒体查询的 
 
         对于不支持  <picture>  元素的浏览器你也可以定义  <img> 元素来替代。 
 
                            			  
						 
 
		 
		 
 
程序猿的技术大观园:www.javathinker.net 
 
 
          
          
          
            
  
            [这个贴子最后由 flybird 在 2020-02-11 21:43:53 重新编辑]
          
          
         | 
        
      
 
网站系统异常
 
 
    
     | 系统异常信息 | 
     
    
     
       
         Request URL: 
http://www.javathinker.net/WEB-INF/lybbs/jsp/topic.jsp?postID=2188
  
java.lang.NullPointerException
         
  
如果你不知道错误发生的原因,请把上面完整的信息提交给本站管理人员。
       
      | 
     
 
 |