媒體查詢使用和裝置畫素比
首先我們在使用Media的時候需要設定下面這段程式碼,來相容移動裝置的展示效果
準備工作1:設定Meta標籤
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no">
程式碼引數解釋:
- width = device-width 寬度等於當前裝置的寬度
- initial-scale = 1.0 初始縮放比例(預設1.0)
- maximum-scale = 1.0 允許使用者縮放到最大比例(預設1.0)
- minimum-scale = 1.0 允許使用者縮放到最小比例(預設1.0)
準備工作2:載入相容js檔案
因為IE8既不支援HTML5也不支援CSS3的Media,所以我們需要載入兩個js檔案,來保證我們實現相容效果
準備工作3:設定IE的渲染方式預設為最高(可選)<!--[if lt IE 9]> <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script> <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script> <![endif]-->
<meta http-equiv="X-UA-Compatible" content="IE=edge">
還有一個更好的寫法
<meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
這段程式碼後面加了一個chrome=1,這個谷歌內嵌瀏覽器框架GCF,如果使用者電腦裡面裝了chrome的外掛,那就可以讓電腦裡面的IE不管是哪個版本都可以使用Webit引擎以及V8引擎進行排版及運算,無比給力,不過使用者要是沒裝這個外掛,那這段程式碼就會讓IE以最高的文件模式展現,建議加上。
進入CSS3 Media寫法:
@media screen and (max-width: 960px){
body{
background: #ccc;
}
}
這算是一個Media的標準寫法,程式碼意思是:當頁面小於960px的時候執行下面的程式碼
當瀏覽器尺寸大於960px的時候程式碼
@media screen and (min-width:960px){
body{
background:orange;
}
}
我們還可以混合使用上面的用法:
@media screen and (min-width:960px) and (max-width:1200px){
body{
background:yellow;
}
}
這段程式碼的意思就是頁面寬度大於960px小於1200px的時候執行下面程式碼裝置畫素比(關於手機端1畫素大小不一的問題)
在實際開發中,有時候寫的是1px,但是手機上看起來是2px,有很多種方法可以解決,通過transform: sacleY() 可以實現,也有通過背景圖,viewport實現的
下面是通過transform來實現手機端的1畫素,用的stylus語法
border-t-1px($color) //border-top
position: relative
&::before
display: block
position: absolute
left:0
top:0
width:100%
border-top:1px solid $color
content:' '
border-b-1px($color) //border-bottom
position: relative
&::after
display: block
position: absolute
left:0
bottom:0
width:100%
border-top:1px solid $color
content:' '
@media(-webkit-min-device-pixel-ratio: 1.5),(min-device-device-pixel-ratio: 1.5)
.border-t-1px
&::before
-webkit-transform: scaleY(0.7)
transform:scaleY(0.7)
@media(-webkit-min-device-pixel-ratio: 2),(min-device-device-pixel-ratio: 2)
.border-t-1px
&::before
-webkit-transform: scaleY(0.5)
transform:scaleY(0.5)
@media(-webkit-min-device-pixel-ratio: 2.5),(min-device-device-pixel-ratio: 2.5)
.border-t-1px
&::before
-webkit-transform: scaleY(0.4)
transform:scaleY(0.33333334)
@media(-webkit-min-device-pixel-ratio: 1.5),(min-device-device-pixel-ratio: 1.5)
.border-b-1px
&::after
-webkit-transform: scaleY(0.7)
transform:scaleY(0.7)
@media(-webkit-min-device-pixel-ratio: 2),(min-device-device-pixel-ratio: 2)
.border-b-1px
&::after
-webkit-transform: scaleY(0.5)
transform:scaleY(0.5)
@media(-webkit-min-device-pixel-ratio: 2.5),(min-device-device-pixel-ratio: 2.5)
.border-b-1px
&::after
-webkit-transform: scaleY(0.4)
transform:scaleY(0.4)
相關推薦
媒體查詢使用和裝置畫素比
首先我們在使用Media的時候需要設定下面這段程式碼,來相容移動裝置的展示效果 準備工作1:設定Meta標籤 <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum
裝置畫素比 devicePixelRatio
裝置畫素比 window.devicePixelRatio = 裝置物理畫素 / 裝置獨立畫素(dpi) 裝置物理畫素: 裝置裝置解析度,eg: iPhone 6 750*1334裝置獨立畫素:
關於裝置畫素比的理論知識
一、視網膜螢幕視網膜螢幕是解析度超過人眼識別極限的高解析度螢幕。蘋果這個術語用在iphone 4手機上,自此一直沿用,它將960×640的畫素壓縮到一個3.5英寸的顯示屏內。也就是說,該螢幕的畫素密度達到326畫素/英寸(ppi),稱之為“視網膜螢幕”。ppi(pixels
手機端適配方案 媒體查詢和flexbale
b- port rac bject cti span key object keyword 方法一 flexible 一、npm 包安裝 lib-flexible 淘寶適配方案 px2rem px自動轉rem npm install lib-flexible --save
UnityShader 漫反射(蘭伯特與半蘭伯特光照模型-逐頂點和逐畫素光照)
漫反射效果 漫反射 是指投射在粗糙表面上的光向各個方向反射的現象。當一束平行的入射光線射到粗糙的表面時,表面會把光線向著四面八方反射,所以入射線雖然互相平行,由於各點的法線方向不一致,造成反射光線向不同的方向無規則地反射,這種反射稱之為“漫反射”或“漫射”。這種反射的光稱為漫射光。很
[demo]自定義響應式網頁:利用css3媒體查詢和window.matchMedia實現
需求: 自定義響應式網頁,需要針對不同的螢幕尺寸做不同的處理。 分析: 1,樣式處理,必須是css3媒體查詢,簡單有效; 2,行為和結構的處理,我們選用window.matchMedia函式處理
rem適配的兩種方式(css媒體查詢和js控制)
css媒體查詢:(根字型大小100px,如果10px大小,寫成0.1rem) html { font-size : 100px; } @media only screen and (min-width: 320px) and (max-width
css中的px em rem rpx,以及物理畫素和邏輯畫素的區別
前言 px,em,rem的解釋是來自於 px px畫素(Pixel)。相對長度單位。畫素px是相對於顯示器螢幕解析度而言的。(引自CSS2.0手冊) PX特點 IE無法調整那些使用px作為單位的字型大小; 國外的大部分網站能夠調整的原因在於其使用
響應式佈局 css3 media 媒體查詢 和js+rem
一:媒體查詢 1.使用media的時候需要先設定<meta>標籤來相容移動裝置的展示。 <meta name="viewport" content="width=device-width,user-scalable=no,initial-scale=1,
獲取圖片的寬和高(畫素)
* 方法一 cImg = Getpict() && 獲取 bmp, jpg, gif xImgObj = LoadPicture(cImg) With xImgObj lnWidth = Int(.Width/26.458) lnHei
關於畫素,解析度,viewport,裝置畫素,css畫素,Retina
做移動的響應式開發也有段時間了,但對於標題所說的一個關鍵字,並沒有每個都完全弄清楚,利用空閒時間好好做個整理(以iphone4s為例說明)。 1. 先說一下畫素的概念 畫素是度量的單位,可以理解為點。點組成線,線組成面,一個頁面也就是有n多個畫素點組成。 2. 解析度 畫
Unity3D之如何建立正確的畫素比在螢幕上
關於這篇文章的命名,實在不知道怎麼命名好,大概功能就是:比如一張寬高為100x100的圖片顯示在螢幕上,那2D攝像頭的Size值為多少時,螢幕上顯示出來圖片大小和圖片的實際畫素一致。 這裡涉及到一個GL座標和畫素座標值的轉換比,這個比值我們可以自己設定~之後
HTML5利用Canvas繪製圖形(使用影象、裁剪區域、使用文字。陰影效果和操作畫素)
使用影象 在canvas中插入影象 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</t
Direct3D基礎——預備知識:多重取樣、畫素格式、記憶體池、交換鏈和頁面置換、深度快取、頂點運算、裝置效能
多重取樣 用畫素矩陣表示影象的時候往往會出現塊狀效應,多重取樣便是一項用於平滑塊狀影象的技術。 圖片來自:DirectX9.03D遊戲開發程式設計基礎 左邊那條是一條鋸齒線,右邊是一條經過取樣的反走樣線,看上去要平滑的多。 D3DMULTISAMPLE_TYPE列舉型別包含
讓瀏覽器相容H5元素和媒體查詢的程式碼
1 <!--[if lt IE 9]> 2 <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script> 3 <s
影象畫素點讀取和賦值
//取IplImage影象畫素值 int main() { IplImage* src = cvLoad("filename",0); //-1預設讀取原通道,0 灰度圖,1彩色圖 if(src!=0) &nb
css 手機裝置上的畫素適配
原文連結:github文章地址 曾幾何時為了相容IE低版本瀏覽器而頭痛,以為到Mobile時代可以跟這些麻煩說拜拜。可沒想到到了移動時代,為了處理各終端的適配而亂了手腳。對於混跡各社群的偶,時常發現大家拿手機淘寶的H5頁面做討論——手淘的H5頁面是如何實現多終端的適配? 那麼趁此
載入影象和遍歷畫素(OpenCV)
#include <iostream> using namespace std; #include <opencv2\opencv.hpp> using namespace cv; void main() { Mat imgMat = imread("0_depth.png
可移植畫素圖格式 PPM,灰度圖格式 PGM,點陣圖格式 PBM 的介紹 -- 視訊和影象程式設計基礎之一
可移植畫素圖格式 PPM,灰度圖格式 PGM,點陣圖格式 PBM 的介紹 簡介 可移植畫素圖格式(PPM),可移植灰度圖格式(PGM)和可移植點陣圖格式(PBM)是便於跨平臺的影象格式。有時候也被統稱為 PNM 格式 檔案格式描述 這三種格式其實是一樣的描述方法,只
畫素,css畫素,物理畫素,裝置獨立畫素,解析度大亂鬥
本文主要闡述移動端佈局中常遇到的一些基本概念,這些概念也適用於PC端,這些概念大概有:畫素(pixel),ppi,解析度,物理畫素(physical pixel), CSS畫素,裝置獨立畫素(devicedependent pixel) 畫素 畫素是影象顯示的基本單