Layout de streaming baseado em celular

Status do navegador

Navegadores comuns no PC: navegador 360, navegador Google, navegador Firefox, navegador QQ, navegador Baidu, navegador Sogou, navegador IE.

Navegadores comuns no terminal móvel: navegador UC, navegador QQ, navegador Oppen, navegador móvel Baidu, navegador de segurança 360, navegador Google, etc.

Resumo: Compatível com navegadores móveis convencionais, só precisa processar o kernel do webkit

O estado atual das telas de telefones celulares

O tamanho da tela dos dispositivos móveis é muito grande, e a tela quebrada é muito grave. A unidade comum é px

Tamanhos comuns de tela de celular

Insira a descrição da imagem aqui

Método de depuração móvel

Insira a descrição da imagem aqui
Resumindo

  • O navegador móvel é voltado principalmente para o núcleo do webkit
  • Os terminais móveis comuns destinam-se principalmente ao desenvolvimento de terminais móveis
  • A tela quebrada do terminal móvel é muito grave, a resolução e o tamanho da tela são diferentes
  • Aprenda a usar o navegador Google para simular a interface e depuração do telefone móvel

Janela de exibição

O navegador é a área da tela onde a página é exibida

Viewport: viewport de layout viewport visual viewport ideal

Janela de visualização de layout

Principalmente para resolver o problema da exibição inicial de páginas de PC em telefones celulares, basicamente defina a resolução da janela de visualização para 980px

Janela de visualização visual

A área do site não afeta a janela de visualização do layout

Janela de visualização ideal

  • A janela de visualização ideal é o tamanho de janela de visualização apropriado para o dispositivo
  • Para adicionar manualmente meta tags de janela de visualização para manipular a janela de visualização
  • Compreenda simplesmente a largura do dispositivo e a largura da janela de visualização do layout

Resumindo

  • A janela de visualização é a área da tela onde o navegador exibe a página.
  • Viewport: viewport de layout viewport visual viewport ideal
  • A janela de visualização ideal é o tamanho de janela de visualização mais adequado para o dispositivo. Entendimento simples: a largura do dispositivo, a largura da janela de visualização do layout

meta tag

<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">

Nota: O rótulo da janela de visualização deve ser adicionado ao terminal móvel, caso contrário, haverá muitos problemas no desenvolvimento do terminal móvel

Janela de visualização padrão

  • A largura do dispositivo deve ser consistente com a largura da janela de visualização
  • Sem zoom
  • A proporção de zoom inicial é 1
  • A proporção máxima de zoom é 1
  • A taxa de zoom mínima é 1

Razão de pixel físico para pixel físico

  • O pixel físico se refere à menor partícula exibida na tela, que é fisicamente real
  • Durante o processo de desenvolvimento, 1px é igual a 1 pixel físico no lado do PC, mas no lado móvel, 1px não é igual a 1 pixel físico.
  • 1px é igual ao número de pixels físicos, que é chamado de proporção física de pixels
早期的移动端开发,1px等于1个物理像素点,随着视网膜技术的出现,将更多的物理像素点压缩至一块屏幕中,提高屏幕的分辨率,使屏幕看起来更加清晰`

Gráfico múltiplo

No desenvolvimento real, a imagem será ampliada n vezes na tela de retina

A imagem que preparamos é n vezes maior do que a imagem real e, em seguida, reduzida manualmente em n vezes, para que a imagem não fique mais desfocada


<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }
        
        img:nth-of-type(2) {
            width: 50px;
            height: 50px;
        }
    </style>
</head>

<body>
    <!-- 在移动端的实际开发过程中,我们准备的图像比实际的图像大n倍,然后再手动缩小原来的n倍,即可解决图像模糊的问题 -->
    <!-- 50*50的图像 -->
    <img src="./img/apple50(1).jpg" alt="">
    <!-- 100*100的图像 -->
    <img src="./img/apple100.jpg" alt="">

</body>

</html>

Insira a descrição da imagem aqui

Imagem de fundo

background-size: especifica o tamanho da imagem de fundo

  • Unidade: comprimento | porcentagem | converter | conter
  • capa: a imagem de fundo é expandida para ficar grande o suficiente para que a imagem de fundo possa cobrir completamente a área de fundo.
  • contêm: a imagem de fundo é expandida para o tamanho máximo, de modo que sua altura e largura sejam totalmente adaptadas à área de conteúdo

Nota: Grave apenas uma unidade, o padrão é largura

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }
        
        .box {
            width: 600px;
            height: 600px;
            border: 1px solid red;
            margin: 0px auto;
            background: url(./img/picture.jpg) no-repeat;
            background-size: contain;
        }
    </style>
</head>

<body>
    <div class="box"></div>
</body>

</html>


Insira a descrição da imagem aqui

Múltiplo de fundo

É consistente com a prática de várias imagens, mas o contêiner deve ser reduzido à mesma imagem de fundo

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }
        
        .box {
            width: 50px;
            height: 50px;
            border: 1px solid red;
            /* 背景图像:100*100 */
            background: url(./img/apple100.jpg) no-repeat;
            margin: 0px auto;
            background-size: 50px 50px;
        }
    </style>
</head>

<body>
    <div class="box"></div>
</body>

</html>

Insira a descrição da imagem aqui

Opções de desenvolvimento para celular

Crie uma página separada para celular

  • Versão móvel JD Mall
  • Versão da tela de toque do Taobao
  • Suning Tesco Mobile Edition

Adicione m na frente da área do site para abrir a página móvel

Insira a descrição da imagem aqui

Página responsiva e terminal móvel

Site oficial da Samsung

Insira a descrição da imagem aquiCore: mude o estilo de acordo com a largura da tela para se adaptar a diferentes terminais

A produção de página responsiva é mais problemática e requer muito esforço para ajustar os problemas de compatibilidade

Resumindo

  • Compatível com páginas móveis só precisa ser compatível com o kernel do webkit
  • Você pode usar os novos recursos do h5 e css3 com confiança
  • O prefixo privado do navegador só precisa adicionar webkit

Soluções de tecnologia móvel

Apresente o estilo de inicialização css: normalize.css

Insira a descrição da imagem aqui
Download oficial: https://necolas.github.io/normalize.css/8.0.1/normalize.css

Estilo especial

Modelo de caixa CSS

  • Modelo de caixa tradicional: a largura da caixa = largura + preenchimento + borda
  • modelo da caixa css3: a largura da caixa = largura (borda + preenchimento)
/*CSS3盒子模型*/
box-sizing: border-box;
/*传统盒子模型*/
box-sizing: content-box;

Nota: O terminal móvel pode usar com segurança o modelo de caixa css3, e o terminal de pc também pode usar o modelo de caixa css3 se a compatibilidade não for considerada


<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }
        
        .box {
            width: 800px;
            height: 800px;
            padding: 20px;
            margin: 20px auto;
            background-color: purple;
            border: 5px solid red;
            /* 引进css3盒子模型 */
            box-sizing: border-box;
        }
    </style>
</head>

<body>
    <div class="box"></div>
</body>

</html>


Insira a descrição da imagem aqui

Remover efeito de destaque

-webkit-tap-highlight-color: transparente;

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }
        
        a {
            -webkit-tap-highlight-color: transparent;
        }
    </style>
</head>

<body>
    <a href="#">尧子陌</a>
</body>

</html>


Insira a descrição da imagem aqui

Estilo personalizado do botão

-webkit-aparência: nenhum;


<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }
        
        input {
            -webkit-appearance: none;
        }
    </style>
</head>

<body>
    <input type="button" value="尧子陌">
</body>

</html>

Insira a descrição da imagem aqui

Proibir o menu pop-up da página pressionada longamente

-webkit-touch-callout: nenhum;


<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }
        
        img,
        a {
            -webkit-touch-callout: none;
            vertical-align: middle;
        }
    </style>
</head>

<body>
    <img src="./img/apple100.jpg" alt="">
    <a href="https://www.baidu.com/">百度</a>
</body>

</html>


Insira a descrição da imagem aqui

Layout comum no celular

Produção separada de páginas para celular (mainstream)

  • Layout de porcentagem
  • layout flexível
  • rem + menos + consulta de mídia
  • Layout misto

Páginas responsivas compatíveis com terminais móveis

  • Inquéritos da mídia
  • bootstarp

Esquema de fluxo

  • Layout de fluxo: layout de porcentagem, também conhecido como layout fixo sem pixel
  • A largura é definida como uma porcentagem, não limitada por pixels fixos, e o conteúdo se estende para ambos os lados
  • O layout de porcentagem é um método de layout comum para o desenvolvimento da web móvel

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }
        
        section {
            width: 100%;
            max-width: 640px;
            min-width: 320px;
            margin: 100px auto;
            border: 1px solid red;
        }
        
        div {
            width: 50%;
            float: left;
            height: 150px;
            background-color: rgb(223, 25, 25);
        }
        
        div:nth-of-type(2) {
            background-color: purple;
        }
    </style>
</head>

<body>
    <section>
        <div></div>
        <div></div>
    </section>
</body>

</html>


Insira a descrição da imagem aqui

Acho que você gosta

Origin blog.csdn.net/weixin_45419127/article/details/110755205
Recomendado
Clasificación