Html5学习内容-4
(一)display与visibility
这里主要控制元素是否显示
例子
visibility:文字消失空间保留
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
.li{
visibility:hidden;
}
</style>
</head>
<body>
<ul>
<li>香蕉</li>
<li class="li">梨子</li>
<li>苹果</li>
<li>芒果</li>
<li>杨桃</li>
</ul>
</body>
</html>
display:文字和空间都消失
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
.li{
display: none;
}
</style>
</head>
<body>
<ul>
<li>香蕉</li>
<li class="li">梨子</li>
<li>苹果</li>
<li>芒果</li>
<li>杨桃</li>
</ul>
</body>
</html>
(二)宽度与高度
- min-width
- max-width
- min-height
- max-height
(三)内容自适用
撑满
- fill-available:设置宽高撑满当前可用空间,
- fit-content:宽度撑满
例子
fit-content
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
div{
width: fit-content;
border: solid 1px red;
margin: auto;
}
</style>
</head>
<body>
<div>hello</div>
</body>
</html>
fill-available:填充和其父类一样的高度
例子:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
.container{
border: solid 1px red;
margin: auto;
height: 100px;
width: 100px;
}
.main{
background-color: green;
border: solid 1px black;
height: -webkit-fill-available;
}
</style>
</head>
<body>
<div class="container">
<div class="top">Today</div>
<div class="main">hello</div>
</div>
</body>
</html>
等高
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
ul{
height: 100px;
}
ul li{
display: inline-block;
width: 100px;
border: solid 1px red;
height: -webkit-fill-available;
}
</style>
</head>
<body>
<ul>
<li>www</li>
<li>sss</li>
<li>ccc</li>
</ul>
</body>
</html>
(四)浮动布局
float:会脱离文档流
两个最主要使用方式:
- block元素水平排列
- 文字与图片环绕排版
例子
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
div {
width: 200px;
height: 200px;
}
div:nth-of-type(1){
float: left;
border: solid 5px red;
}
div:nth-of-type(2){
float: left;
background-color: green;
}
</style>
</head>
<body>
<div>ww</div>
<div>ss</div>
</body>
</html>
- 1设置了float,脱离了文档流,文档流中就没有他的位置了,于是2顶替了他的位置
- 1,2都设置了float,都脱离了文档流,脱离后的元素没有行的概念,只能跟在行的后面显示
- 1取消了float回到文档流中,当然占回了他原本的位置,2还是浮动,只是前面没有元素
左右浮动
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
.cc{
width: 500px;
height: 500px;
border: solid 1px #000;
}
.dd{
width: 200px;
height: 200px;
float: left;
border: solid 1px red;
}
.pp{
width: 200px;
height: 200px;
float: right;
background-color: green;
}
</style>
</head>
<body>
<div class="cc">
<div class="dd">ww</div>
<div class="pp">ss</div>
</div>
</body>
</html>
清除浮动
clear:对前后元素无效,只能作用于自身
none:允许两边都有浮动对象
left:不允许左边有浮动
right:不允许右边有浮动
both:左右都不允许有浮动对象
注意:
如果父元素没有宽高,他的宽高被子元素撑开
浮动元素不占文档流
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
.cc{
width: 500px;
height: 500px;
border: solid 1px #000;
}
.dd{
width: 200px;
height: 200px;
float: left;
border: solid 1px red;
}
.pp{
width: 200px;
height: 200px;
float: right;
background-color: green;
}
p{
clear:both;
}
</style>
</head>
<body>
<div class="cc">
<div class="dd">ww</div>
<div class="pp">ss</div>
<p></p>
</div>
</body>
</html>
或者是overflow:hidden;触发bfc
如何创建BFC
1、float的值不是none。
2、position的值不是static或者relative。
3、display的值是inline-block、table-cell、flex、table-caption或者inline-flex
4、overflow的值不是visible
(五)背景
background-img:url("///");
backgroun-repeat:
- repeat-x:水平重复
- repeat-y:垂直重复
- no-repeat:不重复
background-position:位置
- center居中
- 百分比(水平,垂直)
- 像素
background-attachment: fixed;固定
背景裁切
background-clip:以盒子模型为基础,设置背景显示范围
border-box: 默认值,背景被剪裁到边框盒
padding-box:背景被剪裁到内边距框
content-box:背景被剪裁到内容框
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
.dd{
width: 100px;
height: 100px;
border:dashed 5px #000;
margin: 20px;
padding: 20px;
background-color: pink;
background-clip: padding-box;
}
</style>
</head>
<body>
<div class="dd"></div>
</body>
</html>
background-size
像素:第一值为宽,第二为高,如果只有一个就auto
百分比:相对于父元素
cover:是背景完全覆盖
contain:使宽高适用
多图背景
background-image: url(),url();
用逗号分开
渐变
Html5学习内容-4的更多相关文章
- HTML5 学习总结(一)——HTML5概要与新增标签
一.HTML5概要 1.1.为什么需要HTML5 HTML4陈旧不能满足日益发展的互联网需要,特别是移动互联网.为了增强浏览器功能Flash被广泛使用,但安全与稳定堪忧,不适合在移动端使用(耗电.触摸 ...
- web前端开发学习内容
应该 具备的 知识技能 :懂web标准,熟练手写 xhtml css3 并符合 符合w3c标准 代码能 兼容主流浏览器.ie6.7.8.9 ff 等. ...
- HTML5 学习笔记(一)——HTML5概要与新增标签
目录 一.HTML5概要 1.1.为什么需要HTML5 1.2.什么是HTML5 1.3.HTML5现状及浏览器支持 1.4.HTML5特性 1.5.HTML5优点与缺点 1.5.1.优点 1.5.2 ...
- HTML5 学习笔记--------》HTML5概要与新增标签!
一.HTML5概要 1.1.为什么需要HTML5 HTML4陈旧不能满足日益发展的互联网需要,特别是移动互联网.为了增强浏览器功能Flash被广泛使用,但安全与稳定堪忧,不适合在移动端使用(耗电. ...
- HTML5学习笔记(一):HTML简介
Web前端涵盖的内容较多且杂,主要由3个部分组成:HTML标记语言.CSS样式语言和JavaScript脚本语言组成,而下面我们将先学习最新的标记语言HTML5. <!DOCTYPE>标记 ...
- HTML5学习总结——HTML5入门与新增标签
一.HTML5概要 1.1.为什么需要HTML5 概念: HTML5 是继 HTML4.01, XHTML 1.0 和 DOM 2 HTML 后的又一个重要版本, 旨在消除富 Internet 程序( ...
- [html5] 学习笔记-表单新增的元素与属性(续)
本节主要讲解表单新增元素的controls属性.placeholder属性.List属性.Autocomplete属性.Pattern属性.SelectionDirection属性.Indetermi ...
- HTML5学习之语义化标签(一)
一.为什么HTML5要引入新语义标签 在HTML5出现之前,我们一般采用DIV+CSS布局我们的页面.但是这样的布局方式不仅使我们的文档结构不够清晰,而且不利于搜索引擎爬虫对我们页面的爬取.为了解决上 ...
- HTML5学习指导路线
HTML5是现在热门的技术,经过8年的艰苦努力,该标准规范终于制定完成,在这里为想要学习HTML5初级程序员详细划分一下学习内容和步骤,让大家清楚的知道HTML5需要学什么?能够快速掌握HTML5开发 ...
- HTML5学习笔记(四):H5中表单新增元素及改良
方便布局 表单内容可以放在表单标签之外,这样做的好处是方便设计时不用考虑一定要将表单元素放在指定的form标签之下,只要指定元素适用于哪个表单即可,如下: <form id="test ...
随机推荐
- 2021-11-30 WPF的MVVM绑定
主页面代码 public partial class MainWindow : Window { MainViewModel mainViewModel = null; public MainWind ...
- C/C++八大排序
排序 排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存. 按照难易程度排序,八大排序算法可以从简单到复杂 ...
- C# 多线程访问之 SemaphoreSlim(信号量)【进阶篇】
SemaphoreSlim 是对可同时访问某一共享资源或资源池的线程数加以限制的 Semaphore 的轻量替代,也可在等待时间预计很短的情况下用于在单个进程内等待. 由于 SemaphoreSlim ...
- JS中文件相关的知识(一):MIME类型
不知道有没有同学和我一样,写代码时一遇到文件操作就犯怵,必须要先去把知识补一遍再说:对于Content-Type.responseType.ArrayBuffer.buffer.blob.file等这 ...
- Java不能操作内存?Unsafe了解一下
前言 C++可以动态的分类内存(但是得主动释放内存,避免内存泄漏),而java并不能这样,java的内存分配和垃圾回收统一由JVM管理,是不是java就不能操作内存呢?当然有其他办法可以操作内存,接下 ...
- 零代码,使用 Dify 和 Laf 两分钟接入企业微信 AI 机器人
Dify 允许创建 AI 应用,并提供二次开发的能力.这里我将演示创建一个法律问答助手的 AI 应用,称作"知法".在本篇教程中,我将指导你为"知法"接入企业微 ...
- .NET6.0实现IOC容器
.NET6.0实现IOC容器 IOC的作用这里省略-只对如何使用进行说明. 1. 创建一个.NET6应用程序 这里使用 .NET6.0 WebAPI 应用 2. 声明接口 public interfa ...
- 如何创建集成 LSP 支持多语言的 Web 代码编辑器
对于一个云开发平台来说,一个好的 Web IDE 能很大程度地提高用户的编码体验,而一个 Web IDE 的一个重要组成部分就是代码编辑器. 目前有着多款 web 上的代码编辑器可供选择,比如 Ace ...
- 如何正确实现一个自定义Exception(二)
上一篇<如何正确实现一个自定义 Exception>发布后获得不少 star.有同学表示很担忧,原来自己这么多年一直写错了.其实大家不用过分纠结,如果写的是 .NET CORE 1.0+ ...
- 每日一练:无感刷新页面(附可运行的前后端源码,前端vue,后端node)
1.前言 想象下,你正常在网页上浏览页面.突然弹出一个窗口,告诉你登录失效,跳回了登录页面,让你重新登录.你是不是很恼火.这时候无感刷新的作用就体现出来了. 2.方案 2.1 redis设置过期时间 ...