当前位置: 首页 > news >正文

width: 100%和 width: 100vw这两种写法有什么区别

width: 100%;width: 100vw; 是两种不同的 CSS 写法,它们在实际应用中会有不同的效果。以下是这两种写法的主要区别:

  1. width: 100%;

    • 定义:将元素的宽度设置为其包含块(通常是父元素)宽度的 100%。
    • 效果:元素会根据其包含块的宽度进行调整。如果包含块的宽度发生变化,元素的宽度也会相应变化。
    • 应用场景:适用于需要根据父元素宽度进行调整的元素,比如在响应式布局中,根据父容器的宽度来动态调整元素宽度。
  2. width: 100vw;

    • 定义:将元素的宽度设置为视口宽度(viewport width)的 100%。
    • 效果:元素的宽度等于浏览器窗口的宽度,不受父元素宽度的影响。如果浏览器窗口宽度发生变化,元素的宽度也会相应变化。
    • 应用场景:适用于需要占据整个视口宽度的元素,比如全屏背景图片或者横幅。

举例说明

假设浏览器窗口宽度为 1200px,包含块(父元素)宽度为 800px:

  • 使用 width: 100%;

    <div style="width: 800px;"><div style="width: 100%; background-color: lightblue;">这个 div 的宽度是 800px</div>
    </div>
    

    在这个例子中,内层 div 的宽度是父元素的 100%,即 800px。

  • 使用 width: 100vw;

    <div style="width: 800px;"><div style="width: 100vw; background-color: lightgreen;">这个 div 的宽度是 1200px</div>
    </div>
    

    在这个例子中,内层 div 的宽度是视口宽度的 100%,即 1200px。

总结

  • width: 100%;:相对于父元素宽度,适用于需要根据父元素宽度调整的情况。
  • width: 100vw;:相对于视口宽度,适用于需要占据整个视口宽度的情况。

在这里插入图片描述

相关文章:

  • 大模型参加高考,同写2024年高考作文,及格分(通义千问、Kimi、智谱清言、Gemini Advanced、Claude-3-Sonnet、GPT-4o)
  • 2024年安全现状报告
  • 【Postman接口测试】第四节.Postman接口测试项目实战(中)
  • Vue项目安装axios报错npm error code ERESOLVE npm error ERESOLVE could not resolve解决方法
  • selenium中,如何使用选择框
  • stack和queue的模拟实现
  • 代码随想录算法训练营第二十二天
  • VCS基本仿真
  • 线性代数|机器学习-P9向量和矩阵范数
  • 目标检测数据集 - 智能零售柜商品检测数据集下载「包含VOC、COCO、YOLO三种格式」
  • MacOS M系列芯片一键配置多个不同版本的JDK
  • SpringBoot+Vue幼儿园管理系统(前后端分离)
  • tomcat-valve通过servlet处理请求
  • HTTPS和TCP
  • C++ 数据共享与保护学习记录【代码】
  • Angular 4.x 动态创建组件
  • Golang-长连接-状态推送
  • IE报vuex requires a Promise polyfill in this browser问题解决
  • iOS小技巧之UIImagePickerController实现头像选择
  • react 代码优化(一) ——事件处理
  • React的组件模式
  • Redis 懒删除(lazy free)简史
  • Vue.js-Day01
  • Vue学习第二天
  • 电商搜索引擎的架构设计和性能优化
  • 记一次删除Git记录中的大文件的过程
  • 简单易用的leetcode开发测试工具(npm)
  • 排序(1):冒泡排序
  • 设计模式走一遍---观察者模式
  • 限制Java线程池运行线程以及等待线程数量的策略
  • 源码之下无秘密 ── 做最好的 Netty 源码分析教程
  • 机器人开始自主学习,是人类福祉,还是定时炸弹? ...
  • ​Linux·i2c驱动架构​
  • !! 2.对十份论文和报告中的关于OpenCV和Android NDK开发的总结
  • # Maven错误Error executing Maven
  • #、%和$符号在OGNL表达式中经常出现
  • #我与Java虚拟机的故事#连载08:书读百遍其义自见
  • $jQuery 重写Alert样式方法
  • ( 用例图)定义了系统的功能需求,它是从系统的外部看系统功能,并不描述系统内部对功能的具体实现
  • (2022版)一套教程搞定k8s安装到实战 | RBAC
  • (Oracle)SQL优化技巧(一):分页查询
  • (非本人原创)史记·柴静列传(r4笔记第65天)
  • (续)使用Django搭建一个完整的项目(Centos7+Nginx)
  • (一)u-boot-nand.bin的下载
  • *1 计算机基础和操作系统基础及几大协议
  • .NET 某和OA办公系统全局绕过漏洞分析
  • @Documented注解的作用
  • @Valid和@NotNull字段校验使用
  • [ CTF ] WriteUp-2022年春秋杯网络安全联赛-冬季赛
  • []Telit UC864E 拨号上网
  • [ACTF2020 新生赛]Upload 1
  • [AI Google] Ask Photos: 使用Gemini搜索照片的新方法
  • [AIGC] Nacos:一个简单 yet powerful 的配置中心和服务注册中心
  • [android] 看博客学习hashCode()和equals()
  • [Android]使用Retrofit进行网络请求