CSS基础—网页布局(重点!)

1、两列布局

(1)概念

                经典两列布局是指一种网页布局方式,其中一列宽度固定另一列宽度自适应。‌ 这种布局方式在网页设计中非常常见,因为它能够提供良好的视觉效果和用户体验。

如图所示:

                页面顶部放置一个大的导航或广告条,左边是主页示意栏,右边则是具体内容或文章,下面还有点赞栏

                此类网页布局的两列都有固定的宽度,而且从内容上很容易区分主要内容区域和侧边栏。页面布局整体分为上、中、下3个部分,即header区域container区域footer区域。其中,container又包含mainBox(主要内容区域)sideBox(侧边栏)

        示意图如下:

图源网络

 (2)实现方法

                利用我们之前学习的CSS盒子模型的浮动属性(float) ,将元素向左或向右浮动,另一个元素则自动环绕在其周围,从而实现两列布局

eg:

 运行代码:

<head><style>nav ul{height:30px;  /*给父盒设置高度,避免高度塌陷影响其他兄弟盒*/background-color: aquamarine;}nav ul li{margin-right: 20px;float:left;}#contact{width: 220px;height: 160px;background-color: pink;border: 2px black solid;position: fixed;left:1100px;top:500px;}article{width: 70%;height: 500px;background-color: aqua;border: 2px black solid;float: left;}aside{width: 25%;height: 500px;background-color: paleturquoise;border: 2px black solid;float: left;margin-left: 2%;}footer{width: 100%;height: 10%;background-color: blue;border: 2px black solid;}</style>
</head>  
<body>  <header>  <h1 align="center">栗子七的网页</h1>  <p align="center">欢迎观看</p>  <hr> <nav>  <ul type="none">  <li><a href="#">首页</a></li>  <li><a href="#">关于我们</a></li>  <li><a href="#">各种风采</a></li>  <li><a href="#">联系方式</a></li>  </ul>  </nav>  </header>  <hr>  <main>  <section>  <article>  <h3>文章标题</h3>  <p>这里是文章的内容简介。<br>可以使用<br>标签进行换行。</p>  <br><br><br><img src="C:\Users\栗子\Desktop\web前端开发技术\xg.png" alt="文章配图"                 width="200" height="200">  <p>小狗祝福大家<a href="#">点击这里有惊喜</a></p>  </article>  <aside>  <h3>侧边栏</h3>  <p>侧边栏内容,如快速链接、广告等。</p>  <table border="1">  <tr>  <th>爱好</th>  <th>特长</th>  </tr>  <tr>  <td>看小说</td>  <td><a href="C:\Users\栗子\Desktop\web前端开发技术\html\总结小练    习.html">详情</a></td>  </tr>  <tr>  <td>追剧</td>  <td><a href="C:\Users\栗子\Desktop\web前端开发技术\html\总结小练 习.html">详情</a></td>  </tr>  </table>  </aside>  <div style="clear: both;"></div></section>  <section id="contact">  <h4>联系我们</h4>  <form>  姓名:<input type="text" id="name" name="name"><br>  邮箱:<input type="email" id="email" name="email"><br>  <input type="submit" value="提交">  </form>  </section>  </main>  <hr>  <footer>  <p>版权所有 &copy; 栗子七</p>  </footer>  
</body>  

仅供大家参考

2、三列布局 

                经典三列布局是指一种页面布局方式,其中包含三列左右两列宽度固定中间一列宽度自适应。‌ 这种布局方式在许多网站的首页中广泛应用。 

 实例:

                对于三列布局,浏览者的注意力最容易集中在中间栏的信息区域,其次才是左、右两侧的信息 

三列布局示意图:

图源网络

eg:

运行代码:

<head> <style>nav ul{height:30px; background-color: #D1C5C6;}nav ul li{margin-right: 20px;float:left;}#contact{width: 220px;height: 160px;background-color: rgb(240, 209, 215);border: 2px black solid;position: fixed;left:1100px;top:500px;text-align:center}section{width:1500px;}article{width: 450px;height: 520px;background-color:pink;float: left;text-align:center}#d1{width: 600px;height: 520px;background-color:palevioletred;float: left;text-align:center}aside{width: 450px;height: 520px;background-color:pink;float:right;text-align:center}footer{width: 100%;height:30px; background-color:plum;text-align:center}</style>
</head>
<body>   <header >  <h1 align="center">栗子七的网页</h1>  <p align="center">欢迎观看</p>  <!-- <hr>  --><nav>  <ul type="none">  <li><a href="#">首页</a></li>  <li><a href="#">关于我们</a></li>  <li><a href="#">各种风采</a></li>  <li><a href="#">联系方式</a></li>  </ul>  </nav>  </header>  <main>  <section>  <article >  <h3>文章标题</h3>  <p>这里是文章的内容简介。<br>可以使用<br>标签进行换行。</p>  <!-- <br><br><br> --></article>  <nav id="d1"><img src="C:\Users\栗子\Desktop\web前端开发技术\xg.png" alt="文章配图" width="200" height="200">  <p><a href="https://gdyfvccm.edu.cn/">点击这里有惊喜</a></p>  </nav><aside>  <h3 >侧边栏</h3>  <p >侧边栏内容,如快速链接、广告等。</p>  <table border="1" id="h1">  <tr>  <th>爱好</th>  <th>特长</th>  </tr>  <tr>  <td>看小说</td>  <td><a href="#">详情</a></td>  </tr>  <tr>  <td>追剧</td>  <td><a href="#">详情</a></td>  </tr>  </table>  </aside>  </section>  <section id="contact">  <h4>联系我们</h4>  <form>  姓名:<input type="text" id="name" name="name"><br>  邮箱:<input type="email" id="email" name="email"><br>  <input type="submit" value="提交">  </form>  </section>  <hr>  <div style="clear: both;"></div>
</main>  <footer>  版权所有 &copy; 栗子七</footer>  
</body>  

 大家可以运行感受一下

3、 多行多列布局

                多行多列布局是一种网页布局方式,可以将内容分为多个列进行展示,在水平方向上进行排列。‌ 这种布局方式允许内容在不同的列中展示,使得页面看起来更加丰富和有层次感。多行多列布局在各大电商网站和素材网站中非常常见

实例:

 

eg: 

运行代码:

<head><style>.container{width: 50%;background-color: #97d3eb;border: 1px black solid;}.container ul{margin: 0;padding: 0;}.container ul li{list-style: none;width: 20%;height: 150px;background-color: pink;border: 2px palevioletred solid;margin-right: 2%;margin-bottom: 2%;float: left;}</style>
</head>
<body><section class="container"><ul class="clear_ele">  <li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li></ul><div style="clear: both;"></div></section>
</body>

几列布局都相似的,大家可以动手试试多加几列的效果

4、百分比布局

(1)概念 

        上面的网页各个板块都是精准地定位,会让编写者十分头疼具体位置到底是多少,需一个个尝试才能达到我们想要的效果,为了使这种问题解决,我们可以使用百分比布局

                在网页设计中,百分比布局是一种非常灵活的布局方式。它可以让网页元素根据浏览器窗口的大小自动调整尺寸,从而适应不同的屏幕尺寸和设备 

(2)优势 

  • 响应式设计

                        百分比布局能够使网页在不同尺寸的屏幕上都能良好地显示,无需为每个设备单独设计布局。

  •  灵活性

                可以轻松地调整元素的大小和位置,以适应不同的布局需求。

  • 易于维护

                当需要修改网页布局时,只需要调整百分比值,而不需要修改每个元素的固定尺寸。

 (3)语法格式

<style>

        section{

                width: 100%;

                        }

</style>

 学会这个内容加上之前学习的内容,大家可以做出自己喜欢的网页了!

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/458051.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网络搜索引擎Shodan(4)

声明&#xff1a;学习视频来自b站up主 泷羽sec&#xff0c;如涉及侵权马上删除文章 声明&#xff1a;本文主要用作技术分享&#xff0c;所有内容仅供参考。任何使用或依赖于本文信息所造成的法律后果均与本人无关。请读者自行判断风险&#xff0c;并遵循相关法律法规。 感谢泷…

【JavaEE】【多线程】volatile,wait/notify

目录 一、volatile关键字1.1 内存可见性1.2 volatile解决内存可见性问题 二、wait和notify2.1 wait2.2 notify2.3 使用例子2.3.1 例子12.3.2 例子二 一、volatile关键字 volatile可以保证内存可见性&#xff0c;只能修饰变量。 1.1 内存可见性 在前面介绍线程不安全原因时介…

大数据开发扩展shell 笔记

大数据开发扩展shell 此笔记来自尚硅谷 学习目标 1 熟悉shell脚本的原理和使用 2 熟悉shell的编程语法 第一节 Shell概述 1&#xff09;Linux提供的Shell解析器有&#xff1a; [atguiguhadoop101 ~]$ cat /etc/shells /bin/sh/bin/bash/sbin/nologin/bin/dash/bin/tcsh/b…

JCSA-Journal of Consumer Affairs

文章目录 一、征稿简介二、重要信息三、服务简述四、投稿须知五、联系咨询 一、征稿简介 二、重要信息 期刊官网&#xff1a;https://ais.cn/u/3eEJNv 三、服务简述 Journal of Consumer Affairs由美国消费者利益委员会&#xff08;ACCI&#xff09;拥有&#xff0c;成立于1…

淘宝商品详情的“侦探游戏”:如何用API接口揭开数据的面纱

在这个充满神秘数据的电商世界里&#xff0c;淘宝商品详情就像是一个个隐藏的宝藏&#xff0c;等待着我们去发掘。而API接口&#xff0c;就是我们的“侦探工具”&#xff0c;帮助我们快速揭开这些宝藏的面纱。今天&#xff0c;我们就来一场幽默的“侦探游戏”&#xff0c;看看如…

炒股VS炒CSGO游戏装备,哪个更好做

这个项目&#xff0c;赚个10%都是要被嫌弃的 虽然天天都在抒发自己对股市的看法&#xff0c;但自己自始至终也没有买进任何一支股票。之所以对这个话题感兴趣&#xff0c;着实是因为手上的游戏搬砖项目也是国际性买卖&#xff0c;跟国际形势&#xff0c;国际汇率挂钩&#xff…

C++线程池手写实现

1.Thread类的封装 封装Thread类&#xff0c;使其可以直接在外部调用对象的start,detach,join和cancel等方法来实现对线程的操作 1.1代码 //Thread.h// // Created by crab on 2024/10/20. //#ifndef THREAD_H #define THREAD_H#include <pthread.h>class Thread { pub…

使用 Docker 管理完整项目:Java、Vue、Redis 和 Nginx 的一站式部署

个人名片 🎓作者简介:java领域优质创作者 🌐个人主页:码农阿豪 📞工作室:新空间代码工作室(提供各种软件服务) 💌个人邮箱:[2435024119@qq.com] 📱个人微信:15279484656 🌐个人导航网站:www.forff.top 💡座右铭:总有人要赢。为什么不能是我呢? 专栏导…

[大模型学习推理]资料

https://juejin.cn/post/7353963878541361192 lancedb是个不错的数据库&#xff0c;有很多学习资料 https://github.com/lancedb/vectordb-recipes/tree/main/tutorials/Multi-Head-RAG-from-Scratch 博主讲了很多讲解&#xff0c;可以参考 https://juejin.cn/post/7362789…

js纯操作dom版购物车(实现购物车功能)

代码&#xff1a; <!DOCTYPE html> <html lang"zh-CN"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><title>Document</title>&l…

Linux 进程间通信_匿名管道

1.程间通信目的 : 数据传输&#xff1a;一个进程需要将它的数据发送给另一个进程 资源共享&#xff1a;多个进程之间共享同样的资源。 通知事件&#xff1a;一个进程需要向另一个或一组进程发送消息&#xff0c;通知它&#xff08;它们&#xff09;发生了某种事件&#xff08;如…

vue3+vite 部署npm 包

公司需要所以研究了一下怎么部署安装&#xff0c;比较简单 先下载个vue项目 用vue脚手架安装vue3项目 删掉App.vue 中的其它组件 npm create vuelatest 开始写自定义组件 新建一个el-text 组件, name是重点&#xff0c;vue3中也得这么导出name属性 <script> export de…

JAVA-----线程池

目录 1.简单理解一下线程池 2.线程池参数 3.Executors ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ 1.简单理解一下线程池 线程池&#xff0c;就是用来存储线程的&#xff0c;然后如果有任务传进线程池…

PortQry下载安装使用教程(超详细),Windows测试UDP端口

《网络安全自学教程》 PortQry是微软官方提供的一款TCP/IP连接「排障工具」&#xff0c;用来「检查」TCP/UDP「端口状态」。 平时检查端口状态&#xff0c;最常用的是telnet&#xff0c;但它是基于TCP协议的&#xff0c;无法检测「UDP端口」&#xff0c;这篇文章教大家如何在W…

Flink-cdc Schema Evolution 详解

Flink-cdc Schema Evolution 详解 github原文 glimpse flink-cdc-3 glimpse 源码基于 ~/project/flink_src/flink-cdc master !4 ❯ git remote -v origin https://github.com/apache/flink-cdc.git (fetch) origin https://github.com/apache/flink-cdc.git (push) ~/p…

介绍一款Java开发的企业接口管理系统和开放平台

介绍一款Java开发的企业接口管理系统和开放平台&#xff0c;YesApi接口管理平台Java版本。该系统基于Java开发&#xff0c;可以帮助企业进行统一接口管理、API接口开放&#xff0c;以及用于PaaS系统和SaaS产品平台的快速二次开发和搭建。 一、系统概述 YesApi接口大师&#x…

ClickHouse 5节点集群安装

ClickHouse 5节点集群安装 在此架构中&#xff0c;配置了五台服务器。其中两个用于托管数据副本。其他三台服务器用于协调数据的复制。在此示例中&#xff0c;我们将创建一个数据库和表&#xff0c;将使用 ReplicatedMergeTree 表引擎在两个数据节点之间复制该数据库和表。 官…

RHCE作业二

1.要求&#xff1a; 配置nginx服务通过ip访问多网站 2. 1关闭防火墙 2创建ip 3配置 4创建文件 5测试

logback 如何将日志输出到文件

如何作 将日志输出到文件需要使用 RollingFileAppender&#xff0c;该 Appender 必须定义 rollingPolicy &#xff0c;另外 rollingPollicy 下必须定义 fileNamePattern 和 encoder <appender name"fileAppender" class"ch.qos.logback.core.rolling.Rollin…

二、Spring的执行流程

文章目录 1. spring的初始化过程1.1 ClassPathXmlApplicationContext的构造方法1.2 refresh方法&#xff08;核心流程&#xff09;1.2.1 prepareRefresh() 方法1.2.2 obtainFreshBeanFactory() 方法1.2.3 prepareBeanFactory() 方法1.2.4 invokeBeanFactoryPostProcessors() 方…