rem基础

news/2024/7/19 16:39:08 标签: css, html, css3, js, javascript
  • 目录

    • 1. rem单位介绍
    • 2. 媒体查询
      • 2.1什么是媒体查询
      • 2.2语法规范
        • 1. mediatype媒体类型
        • 2. 关键字
        • 3. 媒体特性
        • 4. rem+媒体查询实现元素大小动态变化
          • index.html
          • style640.html" title=css>css
          • style320.html" title=css>css

1. rem单位介绍

rem (root em)是一个相对单位,类似于em,em是父元素字体大小.
不同的是rem的基准是相对于html元素的字体大小.
比如, 根元素(html)设置font-size=12px,非根元素设置 width:2rem,则width实际为24px.

2. 媒体查询

2.1什么是媒体查询

媒体查询( Media Query)是CSS3新语法。使用@media查询,可以针对不同的媒体类型定义不同的样式@media可以针对不同的屏幕尺寸设置不同的样式

当你重置浏览器大小的过程中,页面也会根据浏览器的宽度和高度重新渲染页面目前针对很多苹果手机、 Android手机,平板等设备都用得到多媒体查询

2.2语法规范

html" title=css>css"> @emedia mediatype and|not|only (media feature){ 
 		cSS-Code;
 }
  • 用@media开头注意@符号
  • mediatype媒体类型
  • 关键字 and not only
  • media feature媒体特性必须有小括号包含

1. mediatype媒体类型

将不同的终端设备划分为不同的类型,称为媒体类型.

解释
all用于所有设备
print用于打印机和打印预览
screen用于电脑屏幕, 平板电脑, 智能手机等

2. 关键字

关键字将媒体类型或多个媒体特性连接到一起做为媒体查询的条件。

解释
and可以将多个媒体特性连接到一起,相当于且”的意思
not排除某个媒体类型,相当于“非”的意思,可以省略。
only指定某个特定的媒体类型,可以省略。

3. 媒体特性

每种媒体类型都具体各自不同的特性,根据不同媒体类型的媒体特性设置不同的展示风格。我们暂且了解三个注意他们要加小括号包含

解释说明
width定义输出设备中页面可见区域的宽度
min-width定义输出设备中页面最小可见区域宽度
max-width定义输出设备中页面最大可见区域宽度

案例

html" title=css>css">/*在屏幕上并且最大宽度800px*/
			/*小于等于800px时显示,否则不显示*/
			@media screen and (max-width: 800px){
				body {
					background-color: pink;
				}
			}
			@media screen and (max-width: 500px){
				body {
					background-color: purple;
				}
			}

效果:
在这里插入图片描述

4. rem+媒体查询实现元素大小动态变化

rem单位是跟着htm来走的,有了rem页面元素可以设置不同大小尺寸媒体查询可以根据不同设备宽度来修改样式

媒体查询+rem就可以实现不同设备宽度,现页面元素大小的动态变化

案例:

html"><!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="UTF-8">
		<title>Title</title>
		<style>html" title=css>css">
			* {
				margin: 0;
				padding: 0;
			}
			@media screen and (min-width:320px){
				html {
					font-size: 50px;
				}
			}
			@media screen and (min-width: 640px) {
				html {
					font-size: 100px;
				}
			}
			.top {
				height: 1rem;
				font-size: .5rem;
				background: green;
				color: #ffffff;
				text-align: center;
				line-height: 1rem;
			}
		</style>
	</head>
	<body>
		<div class="top">购物车</div>
	</body>
</html>

效果:
在这里插入图片描述### 5. 引入资源

当样式比较繁多的时候,我们可以针对不同的媒体使用不同 stylesheets(样式表)原理,就是直接在link中判断设备的尺寸,然后引用不同的html" title=css>css文件

 <link rel="stylesheet" media="mediatype and|not|only (media feature)" href="mystylesheet.html" title=css>css">

案例:

html_119">index.html

html"><!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="UTF-8">
		<title>Title</title>
		<style>html" title=css>css">
			/*<!--大于等于640px,一行显示两个-->*/
			/*<!--小于640px,一行显示一个-->*/
			/*针对不同的屏幕尺寸调用不同的html" title=css>css文件*/
		</style>
		<link rel="stylesheet" href="media_html" title=css>css/style320.html" title=css>css" media="screen and (min-width:320px)">
		<link rel="stylesheet" href="media_html" title=css>css/style640.html" title=css>css" media="screen and (min-width:640px)">
	</head>
	<body>
		<div>1</div>
		<div>2</div>
	</body>
</html>

html" title=css>css_140">style640.html" title=css>css

html" title=css>css">div {
    width: 50%;
    float: left;
    height: 100px;
}
div:nth-child(1){
    background-color: pink;
}
div:nth-child(2){
    background-color: purple;
}

html" title=css>css_154">style320.html" title=css>css

html" title=css>css">div {
    width: 100%;
    height: 100px;
}
div:nth-child(1){
    background-color: pink;
}
div:nth-child(2){
    background-color: purple;
}

效果:
在这里插入图片描述


http://www.niftyadmin.cn/n/1403955.html

相关文章

WinCE下多份BSP的维护技巧

在BSP开发的早期阶段&#xff0c;我们一般是Clone一个与目标平台最相近的的BSP&#xff0c;然后以此为基础做修改。在实际开发过程中&#xff0c;还可能同时存在多种型号的产品。它们的硬件几乎一样&#xff0c;主要是外设不同&#xff0c;如LCD分辨率、按键定义和GPIO的使用等…

css Less基础

维护css的弊端less介绍Less使用less变量变量名语法规范less编译less嵌套less算数运算维护css的弊端 CSS是一门非程序式语言,没有变量、函数、 SCOPE(作用域)等概念CSS需要书写大量看似没有逻辑的代码,CSS冗余度是比较高的。不方便维护及扩展,不利于复用&#xff0c;没有很好的…

四线电阻式触摸屏驱动的优化

触摸屏在电子产品中用得越来越多&#xff0c;其技术也在不断发展。目前常见的有电阻式、电容式、红外式和表面声波式等几大类&#xff0c;其中电阻式最为普遍。最近在WinCE下调试了一款四线电阻式的触摸屏驱动&#xff0c;利用检测触摸压力的方法实现了动态调整触摸屏的灵敏度。…

html 导入的图片的名字可能会影响图片是否显示

今天写网页代码时,碰到个困扰了我好几个小时的问题,只是简单的用img引入了一个图片,结果无论如何就是不显示出来: 代码(局部): <div class"ad"><a href"#"><img src"upload/ad1.gif" alt"1"></a><a href&…

WinCE下非标准键盘的驱动程序设计

键盘作为收入设备&#xff0c;在嵌入式系统中应用广泛。它与PC键盘不同&#xff0c;嵌入式系统中的键盘千差万别&#xff0c;随实际应用的场景不同而不同。今天在这里介绍就是一种非标准键盘的驱动程序设计。在一些应用中&#xff0c;可能只会用到有限的几个按键。为了节省硬件…

html 苏宁首页,简单实现

文章目录效果图:0. 下载链接1. 视口标签2. 搜索模块3. banner模块4. 广告模块5.导航栏模块效果图: 采用remmedia布局,页面大小会随浏览器窗口大小发生变化 0. 下载链接 链接&#xff1a;https://pan.baidu.com/s/1K51YENrKnnluvjg5WwIgcw 提取码&#xff1a;9999 1. 视口标签…

WinCE6.0的EBOOT概要

为一个新的硬件设备定制WinCE6.0操作系统&#xff0c;一般需要完成以下几个主要步骤&#xff1a; 1. 针对特定的硬件设备创建板级支持包(Board Support Package缩写为BSP)&#xff0c;BSP必须包括BOOTLOADER、OEM适配层(OEM Adaptation Layer缩写为OAL)和一些必要的驱动…

S3c2440A WINCE平台HIVE注册表+binfs的实现

今天最大的收获莫过于把binfs和hive注册表同时在三星的平台上实现了&#xff0c;这可是前无古人啊&#xff08;只是看到好多哥们说找不到三星的HIVE资料&#xff09;&#xff0c;哈哈哈。怕今天的成果日后成炮灰&#xff0c;还是写下来比较好&#xff0c;要养成这样的习惯&…