CSS之定位布局(position,定位布局技巧)

当我们在进行页面布局时,经常需要对元素进行定位,这就需要用到CSS的position属性。position属性有以下值:

  1. static (默认值):元素没有定位,遵循普通文档流布局,left、top、right、bottom、z-index属性不起作用

  2. relative:元素相对于自己原来存在的位置进行定位,left、top、right、bottom、z-index属性可用

  3. absolute:根据最近的非static祖先元素进行定位,如果没有非static祖先元素则相对于body元素,在文档流中不占位置,left、top、right、bottom、z-index属性可用

  4. fixed:根据浏览器窗口进行定位,不随页面滚动而滚动,left、top、right、bottom、z-index属性可用

下面我将通过两个示例来演示CSS的定位布局技巧。

示例一:fixed定位实现返回顶部功能

<body>
  <div id="wrapper">
    <p>此处省略若干内容</p>
    <a href="#" id="btn-top">返回顶部</a>
  </div>
</body>
#wrapper {
  position: relative;
  height: 2000px;
}

#btn-top {
  position: fixed;
  right: 50px;
  bottom: 50px;
  width: 100px;
  height: 50px;
  background-color: red;
  color: white;
  text-align: center;
  line-height: 50px;
}

上面的代码中,我们在页面底部添加了一个固定定位的“返回顶部”按钮。由于这个按钮是固定在页面底部的,所以当页面滚动时,这个按钮不会随着页面滚动而滚动。这是通过position: fixed属性实现的。

示例二:absolute定位实现垂直水平居中

<body>
  <div id="wrapper">
    <div class="box"></div>
  </div>
</body>
#wrapper {
  position: relative;
  height: 500px;
}

.box {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 200px;
  height: 200px;
  background-color: blue;
}

上面的代码中,我们使用了absolute定位来实现了一个垂直水平居中的方块。由于position: absolute属性会使元素脱离文档流,所以我们必须在父级元素设置position: relative属性,来作为绝对定位的参考点。然后,我们设置box元素的top、left属性为50%,这时的位置是距离父元素左上角50%的位置。然后,我们使用transform: translate(-50%, -50%);把这个元素在水平方向上向左移动自身宽度的50%,在垂直方向上向上移动自身高度的50%,这时元素就可以完全居中了。

以上,就是我的CSS之定位布局(position,定位布局技巧)的完整攻略,希望能对大家有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:CSS之定位布局(position,定位布局技巧) - Python技术站

(0)
上一篇 2023年6月9日
下一篇 2023年6月9日

相关文章

  • js、css、html判断浏览器的各种版本

    关于JS、CSS、HTML判断浏览器的各种版本的攻略,我会和你分享一些实用的方法和示例。具体来说,我们可以从以下几个方面来介绍: 判断浏览器类型和版本号 通过 navigator.userAgent 判断浏览器类型和版本号 。这是浏览器自身提供的属性,我们可以通过navigator.userAgent来访问。具体代码示例如下: var ua = naviga…

    css 2023年6月10日
    00
  • Next.js入门使用教程

    下面详细讲解“Next.js入门使用教程”的完整攻略。 什么是Next.js Next.js是一个基于React的服务器端渲染框架,它提供了很多有用的功能,如: 自动代码分割 静态文件服务 CSS-in-JS 服务端渲染和客户端渲染自动切换 基于路由的页面结构 支持构建静态网站或单页面应用 安装Next.js 首先,我们需要在本地安装Next.js,执行以下…

    css 2023年6月10日
    00
  • 阿里巴巴UED:Alibaba国际站首页改版小结

    让我来为您详细讲解“阿里巴巴UED:Alibaba国际站首页改版小结”的完整攻略。 简介 Alibaba国际站首页改版是阿里巴巴用户体验设计部(UED)为了提高用户体验和转化率所进行的一个重大改版。改版方案包括:页面结构、交互方式、视觉风格和业务功能等方面的升级,旨在通过提高首页的视觉效果、易用性以及功能性,让用户更好地理解阿里巴巴的全球化布局和产品优势,进…

    css 2023年6月11日
    00
  • 基于vue中的scoped坑点解说

    下面详细讲解基于Vue中的scoped样式坑点解说。 什么是scoped样式 在Vue中,我们可以使用scoped样式来局部作用于某个组件,而不会影响全局样式。scoped样式通过在样式文件中添加<style scoped>来声明。 scoped样式的应用 使用scoped样式在Vue组件中可以很好地控制样式,避免样式冲突,具体示例如下: &lt…

    css 2023年6月10日
    00
  • Reactjs 错误边界优雅处理方法demo

    Reactjs 错误边界是ReactJS 16一个新的特性。它可以让我们在组件内部,通过生命周期函数来捕获JavaScript错误。错误边界能够捕获组件树内一个未被捕获的JavaScript异常,并且在渲染发生错误时,提供优雅的兜底方案,而不是整个组件树崩溃。 创建错误边界 创建错误边界非常简单,只需创建一个类实现 componentDidCatch 方法即…

    css 2023年6月10日
    00
  • 当鼠标经过表格数据行时颜色不同且奇偶行颜色也不同

    当鼠标经过表格数据行时,可以通过CSS样式来实现颜色不同的效果。下面给出两个示例来说明该效果的实现方法。 示例一:使用CSS伪类选择器 可以使用CSS的伪类选择器来实现当鼠标经过表格数据行时的颜色变化,同时也可以通过伪类选择器控制奇偶行的颜色不同。具体步骤如下: 首先,为表格的偶数行和奇数行分别指定不同的CSS样式。例如: table tr:nth-chil…

    css 2023年6月9日
    00
  • CSS 网页制作时遇到问题的快速参考技巧

    CSS 网页制作时遇到问题的快速参考技巧 在进行 CSS 网页制作过程中,可能会遇到各种问题。下面介绍一些快速参考技巧,帮助你更快速地解决问题。 1. 使用开发者工具 开发者工具可以帮助你查找 HTML 和 CSS 代码,以及对其进行编辑和调试。一般情况下,你可以通过右键点击浏览器页面中的元素,选择“检查”来打开开发者工具。接着,你可以在“元素”面板中查看该…

    css 2023年6月9日
    00
  • 一段css让全站变灰的代码总结

    下面我将详细讲解“一段CSS让全站变灰的代码总结”的攻略。 什么是“一段CSS让全站变灰的代码”? “一段CSS让全站变灰的代码”是指一段CSS样式代码,可以将整个网站变成灰色。 怎么实现? 实现的原理是通过在网站中添加一段背景色为灰色的CSS样式代码,并将该样式代码作为全站页面的样式表。 下面是具体步骤: 在CSS文件中添加以下代码: css html {…

    css 2023年6月11日
    00
合作推广
合作推广
分享本页
返回顶部