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

深圳网站设计+建设首选深圳市中国建设网站齐齐哈尔市

深圳网站设计+建设首选深圳市,中国建设网站齐齐哈尔市,九龙坡区发布,创立公司网站今日目标能够说出 为什么要用定位能够说出 定位的 4 种分类能够说出 4 种定位各自的特点能够说出 为什么常用子绝父相布局能够写出 淘宝轮播图布局能够说出 显示隐藏的 3 种方式以及区别1. 定位(position) 介绍1.1 为什么使用定位我们先来看一个效果#xff0c;同时思考一下用…今日目标能够说出 为什么要用定位能够说出 定位的 4 种分类能够说出 4 种定位各自的特点能够说出 为什么常用子绝父相布局能够写出 淘宝轮播图布局能够说出 显示隐藏的 3 种方式以及区别1. 定位(position) 介绍1.1 为什么使用定位我们先来看一个效果同时思考一下用标准流或浮动能否实现类似的效果场景1 某个元素可以自由的在一个盒子内移动位置并且压住其他盒子.场景2当我们滚动窗口的时候盒子是固定屏幕某个位置的。结论要实现以上效果标准流 或 浮动都无法快速实现所以1.浮动可以让多个块级盒子一行没有缝隙排列显示 经常用于横向排列盒子。2.定位则是可以让盒子自由的在某个盒子内移动位置或者固定屏幕中某个位置并且可以压住其他盒子。1.2 定位组成定位将盒子定在某一个位置所以定位也是在摆放盒子 按照定位的方式移动盒子定位也是用来布局的它有两部分组成定位 定位模式 边偏移 定位模式 用于指定一个元素在文档中的定位方式。边偏移则决定了该元素的最终位置。1.2.1 边偏移方位名词边偏移 就是定位的盒子移动到最终位置。有 top、bottom、left 和 right 4 个属性。边偏移属性示例描述toptop: 80px顶端偏移量定义元素相对于其父元素上边线的距离。bottombottom: 80px底部偏移量定义元素相对于其父元素下边线的距离。leftleft: 80px左侧偏移量定义元素相对于其父元素左边线的距离。rightright: 80px右侧偏移量定义元素相对于其父元素右边线的距离定位的盒子有了边偏移才有价值。 一般情况下凡是有定位地方必定有边偏移。1.2.2 定位模式 (position)在 CSS 中通过 position 属性定义元素的定位模式语法如下选择器 { position: 属性值; }定位模式是有不同分类的在不同情况下我们用到不同的定位模式。定位模式决定元素的定位方式 它通过 CSS 的 position 属性来设置其值可以分为四个值语义static静态定位relative相对定位absolute绝对定位fixed固定定位1.3 定位模式介绍1.3.1. 静态定位(static) - 了解静态定位是元素的默认定位方式无定位的意思。它相当于 border 里面的none静态定位static不要定位的时候用。语法选择器 { position: static; }静态定位 按照标准流特性摆放位置它没有边偏移。静态定位在布局时我们几乎不用的 1.3.2. 相对定位(relative) - 重要相对定位是元素在移动位置的时候是相对于它自己原来的位置来说的自恋型。语法选择器 { position: relative; }相对定位的特点务必记住1.它是相对于自己原来的位置来移动的移动位置的时候参照点是自己原来的位置。2.原来在标准流的位置继续占有后面的盒子仍然以标准流的方式对待它。因此相对定位并没有脱标。它最典型的应用是给绝对定位当爹的。。。效果图1.3.3. 绝对定位(absolute) - 重要 1.3.3.1 绝对定位的介绍绝对定位是元素在移动位置的时候是相对于它祖先元素来说的拼爹型。语法 选择器 { position: absolute; }完全脱标 —— 完全不占位置 父元素没有定位则以浏览器为准定位Document 文档。父元素要有定位元素将依据最近的已经定位绝对、固定或相对定位的父元素祖先进行定位。绝对定位的特点总结务必记住1.如果没有祖先元素或者祖先元素没有定位则以浏览器为基准定位Document 文档。2.如果祖先元素有定位相对、绝对、固定定位则以最近一级的有定位祖先元素为参考点移动位置。3.绝对定位不再占有原先的位置。所以绝对定位是脱离标准流的。脱标1.3.3.2 定位口诀 —— 子绝父相弄清楚这个口诀就明白了绝对定位和相对定位的使用场景。这个“子绝父相”太重要了是我们学习定位的口诀是定位中最常用的一种方式这句话的意思是子级是绝对定位的话父级要用相对定位。因为绝对定位的盒子是拼爹的所以要和父级搭配一起来使用。①子级绝对定位不会占有位置可以放到父盒子里面的任何一个地方不会影响其他的兄弟盒子。②父盒子需要加定位限制子盒子在父盒子内显示。③父盒子布局时需要占有位置因此父亲只能是相对定位。这就是子绝父相的由来所以相对定位经常用来作为绝对定位的父级。总结 因为父级需要占有位置因此是相对定位 子盒子不需要占有位置则是绝对定位当然子绝父相不是永远不变的如果父元素不需要占有位置子绝父绝也会遇到。疑问为什么在布局时子级元素使用绝对定位时父级元素就要用相对定位呢观察下图思考一下在布局时左右两个方向的箭头图片以及父级盒子的定位方式。分析方向箭头叠加在其他图片上方应该使用绝对定位因为绝对定位完全脱标完全不占位置。父级盒子应该使用相对定位因为相对定位不脱标后续盒子仍然以标准流的方式对待它。如果父级盒子也使用绝对定位会完全脱标那么下方的广告盒子会上移这显然不是我们想要的。结论父级要占有位置子级要任意摆放这就是子绝父相的由来。1.3.4. 固定定位(fixed) - 重要固定定位是元素固定于浏览器可视区的位置。认死理型 主要使用场景 可以在浏览器页面滚动时元素的位置不会改变。语法 选择器 { position: fixed; }固定定位的特点务必记住1.以浏览器的可视窗口为参照点移动元素。跟父元素没有任何关系不随滚动条滚动。2.固定定位不在占有原先的位置。固定定位也是脱标的其实固定定位也可以看做是一种特殊的绝对定位。认死理型 完全脱标—— 完全不占位置只认浏览器的可视窗口 —— 浏览器可视窗口 边偏移属性 来设置元素的位置跟父元素没有任何关系单独使用的不随滚动条滚动。固定定位举例提示IE 6 等低版本浏览器不支持固定定位。1.3.5 粘性定位(sticky) - 了解粘性定位可以被认为是相对定位和固定定位的混合。 Sticky 粘性的 语法 选择器 { position: sticky; top: 10px; }粘性定位的特点1.以浏览器的可视窗口为参照点移动元素固定定位特点2.粘性定位占有原先的位置相对定位特点3.必须添加 top 、left、right、bottom 其中一个才有效跟页面滚动搭配使用。 兼容性较差IE 不支持。1.3.6 定位总结定位模式是否脱标移动位置是否常用static 静态定位否不能使用边偏移很少relative 相对定位否 (占有位置)相对于自身位置移动基本单独使用absolute绝对定位是不占有位置带有定位的父级要和定位父级元素搭配使用fixed 固定定位是不占有位置浏览器可视区单独使用不需要父级sticky 粘性定位否 (占有位置)浏览器可视区当前阶段少一定记住 相对定位、固定定位、绝对定位 两个大的特点 1. 是否占有位置脱标否 2. 以谁为基准点移动位置。学习定位重点学会子绝父相。注意边偏移需要和定位模式联合使用单独使用无效top 和 bottom 不要同时使用left 和 right 不要同时使用。3. 定位(position)的应用3.1. 固定定位小技巧 固定在版心左侧位置。小算法1.让固定定位的盒子 left: 50%. 走到浏览器可视区也可以看做版心 的一半位置。2.让固定定位的盒子 margin-left: 版心宽度的一半距离。 多走 版心宽度的一半位置就可以让固定定位的盒子贴着版心右侧对齐了。案例效果!DOCTYPE html html langen headmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0meta http-equivX-UA-Compatible contentieedgetitle固定定位小技巧-固定到版心右侧/titlestyle.w {width: 800px;height: 1400px;background-color: pink;margin: 0 auto;}.fixed {position: fixed;/* 1. 走浏览器宽度的一半 */left: 50%;/* 2. 利用margin 走版心盒子宽度的一半距离 */margin-left: 405px;width: 50px;height: 150px;background-color: skyblue;}/style /head bodydiv classfixed/divdiv classw版心盒子 800像素/div/body /html3.2. 堆叠顺序z-index在使用定位布局时可能会出现盒子重叠的情况。此时可以使用 z-index 来控制盒子的前后次序 (z轴)语法选择器 { z-index: 1; }z-index 的特性如下属性值正整数、负整数或 0默认值是 0数值越大盒子越靠上 如果属性值相同则按照书写顺序后来居上数字后面不能加单位。注意z-index 只能应用于相对定位、绝对定位和固定定位的元素其他标准流、浮动和静态定位无效。!DOCTYPE html html langen headmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0meta http-equivX-UA-Compatible contentieedgetitle定位的堆叠顺序/titlestyle.box {position: absolute;top: 0;left: 0;width: 200px;height: 200px;}.xiongda {background-color: red;z-index: 1;}.xionger {background-color: green;left: 50px;top: 50px;z-index: 2;}.qiangge {background-color:blue;left: 100px;top: 100px;}/style /head bodydiv classbox xiongda熊大/divdiv classbox xionger熊二/divdiv classbox qiangge光头强/div /body /html4. 定位(position)的拓展4.1 绝对定位的盒子居中注意加了绝对定位/固定定位的盒子不能通过设置 margin: auto 设置水平居中。但是可以通过以下计算方法实现水平和垂直居中可以按照下图的方法left: 50%;让盒子的左侧移动到父级元素的水平中心位置margin-left: -100px;让盒子向左移动自身宽度的一半。!DOCTYPE html html langen headmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0meta http-equivX-UA-Compatible contentieedgetitle绝对定位水平垂直居中/titlestyle.box {position: absolute;/* 1. left 走 50% 父容器宽度的一半 */left: 50%;/* 2. margin 负值 往左边走 自己盒子宽度的一半 */margin-left: -100px;top: 50%;margin-top: -100px;width: 200px;height: 200px;background-color: pink;/* margin: auto; */}/style /head bodydiv classbox/div /body /html4.2 定位特殊特性绝对定位和固定定位也和浮动类似。1.行内元素添加绝对或者固定定位可以直接设置高度和宽度。2.块级元素添加绝对或者固定定位如果不给宽度或者高度默认大小是内容的大小。前面我们讲过 display 是 显示模式 可以改变显示模式有以下方式:可以用inline-block 转换为行内块可以用浮动 float 默认转换为行内块类似并不完全一样因为浮动是脱标的绝对定位和固定定位也和浮动类似 默认转换的特性 转换为行内块。所以说 一个行内的盒子如果加了浮动、固定定位和绝对定位不用转换就可以给这个盒子直接设置宽度和高度等。4.3 脱标的盒子不会触发外边距塌陷浮动元素、绝对定位(固定定位元素的都不会触发外边距合并的问题。 我们以前是用padding border overflow解决的也就是说我们给盒子改为了浮动或者定位就不会有垂直外边距合并的问题了。4.4 绝对定位固定定位会完全压住盒子浮动元素不同只会压住它下面标准流的盒子但是不会压住下面标准流盒子里面的文字图片但是绝对定位固定定位 会压住下面标准流所有的内容。浮动之所以不会压住文字因为浮动产生的目的最初是为了做文字环绕效果的。 文字会围绕浮动元素5. 综合案例 - 淘宝轮播图(重点)5.1 效果图5.2 布局分析5.3 步骤大盒子我们类名为 tb-promo 淘宝广告里面先放一张图片。左右两个按钮 用链接就好了。 左箭头 prev 右箭头 next 左按钮样式border-radius左上右上右下左下 右按钮定位提取左右按钮共同的样式代码并集选择器底侧小圆点ul 继续做。 类名为 promo-nav 中间长方形椭圆 ul的定位水平居中离底部15px 长方形需要五个小圆点ul无序列表li浮动椭圆中小圆点的样式5.4 知识点圆角矩形设置4个角圆角矩形可以为4个角分别设置圆度 但是是有顺序的border-top-left-radius:20px;border-top-right-radius:20px;border-bottom-right-radius:20px;border-bottom-left-radius:20px;如果4个角数值相同border-radius: 15px;里面数值不同我们也可以按照简写的形式具体格式如下:border-radius: 左上角 右上角 右下角 左下角;还是遵循的顺时针。5.5 代码参考!DOCTYPE html html langenheadmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0meta http-equivX-UA-Compatible contentieedgetitle淘宝轮播图做法/titlestyle* {margin: 0;padding: 0;}li {list-style: none;}.tb-promo {position: relative;width: 520px;height: 280px;background-color: pink;margin: 100px auto;}.tb-promo img {width: 520px;height: 280px;}/* 并集选择器可以集体声明相同的样式 */.prev,.next {position: absolute;/* 绝对定位的盒子垂直居中 */top: 50%;margin-top: -15px;/* 加了绝对定位的盒子可以直接设置高度和宽度 */width: 20px;height: 30px;background: rgba(0, 0, 0, .3);text-align: center;line-height: 30px;color: #fff;text-decoration: none;}.prev {left: 0;/* border-radius: 15px; */border-top-right-radius: 15px;border-bottom-right-radius: 15px;}.next {/* 如果一个盒子既有left属性也有right属性则默认会执行 left属性 同理 top bottom 会执行 top */right: 0;/* border-radius: 15px; */border-top-left-radius: 15px;border-bottom-left-radius: 15px;}.promo-nav {position: absolute;bottom: 15px;left: 50%;margin-left: -35px;width: 70px;height: 13px;/* background-color: pink; */background: rgba(255,255,255, .3);border-radius: 7px;}.promo-nav li {float: left;width: 8px;height: 8px;background-color: #fff;border-radius: 50%;margin: 3px;}/* 不要忘记选择器权重的问题 */.promo-nav .selected {background-color: #ff5000;}/style /headbodydiv classtb-promoimg srcimages/tb.jpg alt!-- 左侧按钮箭头 --a href# classprev lt; /a!-- 右侧按钮箭头 --a href# classnext gt; /a!-- 小圆点 --ul classpromo-navli classselected/lili/lili/lili/lili/li/ul/div /body/html6. 网页布局总结通过盒子模型清楚知道大部分html标签是一个盒子。通过CSS浮动、定位 可以让每个盒子排列成为网页。一个完整的网页是标准流、浮动、定位一起完成布局的每个都有自己的专门用法。6.1. 标准流 可以让盒子上下排列或者左右排列垂直的块级盒子显示就用标准流布局。6.2. 浮动可以让多个块级元素一行显示或者左右对齐盒子多个块级盒子水平显示就用浮动布局6.3. 定位定位最大的特点是有层叠的概念就是可以让多个盒子前后叠压来显示。如果元素自由在某个盒子内移动就用定位布局。7. 元素的显示与隐藏目的本质 让一个元素在页面中消失或者显示出来场景 类似网站广告当我们点击关闭就不见了但是我们重新刷新页面会重新出现7.1. display 显示重点display 设置或检索对象是否及如何显示。display: none 隐藏对象displayblock 除了转换为块级元素之外同时还有显示元素的意思。特点 display 隐藏元素后不再占有原来的位置。后面应用及其广泛搭配 JS 可以做很多的网页特效。实际开发场景配合后面js做特效比如下拉菜单原先没有鼠标经过显示下拉菜单 应用极为广泛7.2. visibility 可见性 了解visibility 属性用于指定一个元素应可见还是隐藏。visibilityvisible ;  元素可视visibilityhidden;   元素隐藏特点visibility 隐藏元素后继续占有原来的位置。停职留薪如果隐藏元素想要原来位置 就用 visibilityhidden如果隐藏元素不想要原来位置 就用 displaynone (用处更多 重点7.3. overflow 溢出重点overflow 属性指定了如果内容溢出一个元素的框超过其指定高度及宽度 时会发生什么。属性值描述visible不剪切内容也不添加滚动条hidden不显示超过对象尺寸的内容超出的部分隐藏掉scroll不管超出内容否总是显示滚动条auto超出自动显示滚动条不超出不显示滚动条一般情况下我们都不想让溢出的内容显示出来因为溢出的部分会影响布局。但是如果有定位的盒子 请慎用overflow:hidden 因为它会隐藏多余的部分。实际开发场景清除浮动隐藏超出内容隐藏掉, 不允许内容超过父盒子。7.4. 显示与隐藏总结属性区别用途display 显示 重点隐藏对象不保留位置配合后面js做特效比如下拉菜单原先没有鼠标经过显示下拉菜单 应用极为广泛visibility 可见性 了解隐藏对象保留位置使用较少overflow 溢出重点只是隐藏超出大小的部分1. 可以清除浮动 2. 保证盒子里面的内容不会超出该盒子范围8 综合案例土豆网鼠标经过显示遮罩8.1. 效果图8.2. 案例目标1.练习元素的显示与隐藏2.练习元素的定位8.3. 核心原理原先半透明的黑色遮罩看不见 鼠标经过 大盒子就显示出来。遮罩的盒子不占有位置 就需要用绝对定位 和 display 配合使用。8.4. 代码参考!DOCTYPE html html langenheadmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0meta http-equivX-UA-Compatible contentieedgetitle仿土豆网显示隐藏遮罩案例/titlestyle.tudou {position: relative;width: 444px;height: 320px;background-color: pink;margin: 30px auto;}.tudou img {width: 100%;height: 100%;}.mask {/* 隐藏遮罩层 */display: none;position: absolute;top: 0;left: 0;width: 100%;height: 100%;background: rgba(0, 0, 0, .4) url(images/arr.png) no-repeat center;}/* 当我们鼠标经过了 土豆这个盒子就让里面遮罩层显示出来 */.tudou:hover .mask {/* 而是显示元素 */display: block;}/style /headbodydiv classtudoudiv classmask/divimg srcimages/tudou.jpg alt/divdiv classtudoudiv classmask/divimg srcimages/tudou.jpg alt/divdiv classtudoudiv classmask/divimg srcimages/tudou.jpg alt/divdiv classtudoudiv classmask/divimg srcimages/tudou.jpg alt/div /body/html
http://www.dnsts.com.cn/news/141893.html

相关文章:

  • 蓝色旅游网站模板大学新校区建设网站
  • 沈阳网站icp备案网站运营策略
  • 水果 网站源码400电话收费标准
  • 产品介绍网站模板下载地址网页项目
  • 桂林网站制作找志合网络公司婚纱摄影网站设计
  • 网站建设优化西安丹江口网站开发
  • 站群管理软件建设一个网站
  • 有做网站的吗linux 网站配置
  • 政务网站开发方案山西网站建设排名
  • 阜南网站建设公司广州海珠网站建设
  • 优质公司网站什么样的网站做百度广告好
  • php5mysql网站开发实例精讲wordpress怎么绑域名
  • 南京网站建设开发公司网站推广页面设计
  • 松江区环保局网站建设项目备案儿童网站html模板
  • 做啤酒最全的网站wordpress 内容表
  • 青海做网站公司wordpress系统邮箱设置
  • 慈溪做无痛同济 网站公司网站后台如何上传视频
  • iis可以做php网站吗国家出台建设工程政策的网站
  • php网站培训班能看所有网站的浏览器
  • 怎么做网站优化网上工作平台
  • 做直播网站找哪家网站好东莞住建局官方网站
  • wordpress个人建站教程网站建站网站哪家好
  • 室内设计师网站十大网站在线企业管理培训课程
  • 红旗河沟网站建设游戏工作室招聘信息
  • 做设计用的素材下载网站有哪些动易 网站顶部导航 sitefactory
  • 天津市建设工程评标专家网站wordpress图片自动轮播插件
  • 帝国网站源码手机推广服务公司
  • 中山市网站建设 中企动力网站代码加密了怎么做
  • 国家和住房城乡建设部网站网站建设大约多长时间
  • 平板做网站服务器成都短视频制作培训班