21-媒体查询/响应式布局

媒体查询(响应式布局)

一个网站能兼容多个终端,而不是为每个终端做一个特定的版本

  1. 概念:媒体查询只是一个工具,不是特定的属性或属性值

    响应式布局需要满足三个条件

    1. 网站必须建立灵活的布局基础
    2. 引用到网站的图片必须是可伸缩的
    3. 不同的显示风格,需要在Media Query上设置不同的样式

    缺少任何一个功能,都不能称为合格的响应式网页设计

  2. 作用:可以使用媒体查询来判断当前用户设备特性(屏幕的大小)从而设置不同的css样式

  3. 语法:@media 设备的类型 操作符号(设备特性){css声明}

    • @media 定义的是媒体查询
    • 设备的类型 电脑手机平板屏幕 screen/all
    • 操作符号 常用的有and,还有一些不常用的(not,only)
    • (设备特性)min-width/max-width
  4. 关于媒体查询在书写时候的注意点

    • 媒体查询建议写在样式表的最下面,设置权重的问题
    • 媒体查询每个英文单词之间需要空格
    • 如果有多个设备特性的时候需要写多个操作符号和后面的设备特性
    • 在设备特性的小括号内不可以加特殊符号(特指;)
    • 不同电脑厂商在设置媒体查询时候可能会存在一些误差(300px/301px)
  5. 响应式布局重要概念:断点

    • 断点是响应式设计的构建块:使用它们来控制何时可以再特定的屏幕或者设备大小调整布局
    • 使用媒体查询按断点构建CSS:媒体查询是CSS的一项功能,可以根据一组浏览器和操作系统参数有条件地应用样式

    在这里插入图片描述

    @media all and (min-width:300px) and (max-width:500px){
        div{
            font-size: 18px;
            color: red;
        }
    }
    
  6. 优缺点

    • 优点:可以通过检测屏幕特性改变用户的相关设置,相对比较灵活可以做到响应式
    • 缺点:麻烦

css2做响应式布局,了解

<link rel="stylesheet" href="css/style1.css" media="all and  (min-width:300px) and (max-width:500px)">

移动端

手机常见的概念

  1. ppi 手机像素密度 4个像素点 苹果
  2. dpi 1个像素点 安卓
  3. retina 屏幕 高清显示屏
    • bug 1px的边框解析成2px => 解决方式:设置成0.5px / 缩放

移动端布局:单位rem

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
3*self.player and 0 in diagonal: score += 100 elif np.sum(diagonal) == 2*self.player and 0 in diagonal: score += 10 elif np.sum(diagonal) == -2*self.player and 0 in diagonal媒体查询响应式布局都是用来实现响应式设计的技术,但它们具有不: score -= 10 elif np.sum(diagonal) == -3*self.player and 0 in diagonal: score -=同的作用和实现方式。 媒体查询是CSS3新增的一个功能,它可以根据设备的屏幕 100 elif np.sum(diagonal) == -4*self.player and 0 in diagonal: score -= 1000 尺寸、分辨率、方向等属性来判断设备类型,并针对不同的设备类型应用不同 elif np.sum(diagonal) == -5*self.player: score -= 10000 return score ``` 以下是使用的CSS样式。通过媒体查询,可以实现在不同设备上显示不同的网页布局和样α-β剪枝实现五子棋博弈系统的Python代码: ```python import numpy as np # 定义棋式。媒体查询只是一种CSS技术,它并不能改变网页的布局结构,只能改盘大小 BOARD_SIZE = 15 # 定义玩家 PLAYER_BLACK = 1 PLAYER_WHITE = -1 class Board变CSS样式。 响应式布局是一种网页设计的方法,它可以根据设备的屏幕尺: def __init__(self): self.board = np.zeros((BOARD_SIZE, BOARD_SIZE), dtype=int) self.current_player寸和分辨率等特性,自适应地调整网页的布局结构,以适应不同设 = PLAYER_BLACK def get_legal_moves(self): """ 获取合法走法 :return: 合法走法备的显示。响应式布局不仅可以改变CSS样式,还可以改变HTML结构和JavaScript代码,列表,每个元素为一个二元组(x, y) """ legal_moves = [] for i in range(BOARD以实现更好的用户体验。响应式布局需要在设计阶段就考虑到不同设备的_SIZE): for j in range(BOARD_SIZE): if self.board[i][j] == 0: legal_moves.append((显示效果,需要通过CSS、HTML、JavaScript等多种技术进行实现。 综上所述,媒体查询和i, j)) return legal_moves def move(self, move): """ 走一步棋 :param move响应式布局都是实现响应式设计的重要技术,但媒体查询是一种CSS技术: 二元组(x, y),表示下子的位置 """ x, y = move self.board[x][,只能改变CSS样式,而响应式布局则是一种网页设计方法,可以改变CSS、y] = self.current_player self.current_player = -self.current_player def is_game_over(self): """ 判断HTML、JavaScript等多种技术,实现自适应布局。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

echozzi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值