首页 > 其他分享 >绝对定位和相对定位以及伪元素

绝对定位和相对定位以及伪元素

时间:2023-08-24 14:46:26浏览次数:41  
标签:定位 img 元素 绝对 height 相对

Code

  1. HTML
<!DOCTYPE html>
<html lang="zh">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>相对定位与绝对定位以及伪元素</title>
  <link rel="stylesheet" href="main.css">
  <script src="./main.js"></script>
</head>

<body>
  <div class="img-container">
    <img src="../asserts/images/pixiv 102215084 p2.png" alt="小兔娘">
  </div>
</body>

</html>
  1. CSS
body {
  margin: 0;
  padding: 0;
  width: 100vw;
  height: 100vh;
  /* flex布局:使居中 */
  display: flex;
  align-content: center;
  align-items: center;
  justify-content: center;
}

.img-container {
  width: 50vw;
  height: 50vh;
  /* 设置相对定位,表示绝对定位的 (0,0) 位置是相对于该元素的左上角;一般相对定位会配合绝对定位使用 */
  position: relative;
}

img {
  width: 100%;
  height: 100%;
  /* 图片填充img方式,等比缩小还是铺满 */
  object-fit: fill;
}

.img-container::before {
  /* 
      绝对定位的 (0, 0) 是相对于最近一个相对定位的父元素的左上角,
      如果没有父元素采用相对定位,则相对于html标签 
  */
  content: '';
  position: absolute;
  /* 尺寸和位置一定要写 */
  right: 5rem;
  bottom: 5rem;
  width: 48px;
  height: 48px;

  background-image: url("../asserts/images/like.svg");
  background-size: contain;
}
  1. JAVASCRIPT
 // 没有用到 js

Result

image
用到的图片:

  1. image

Conclusion

  1. 设置相对定位,表示绝对定位的 (0,0) 位置是相对于该元素的左上角;一般相对定位会配合绝对定位使用
  2. 绝对定位的 (0, 0) 是相对于最近一个相对定位的父元素的左上角
  3. 如果没有父元素采用相对定位,则相对于html标签,元素会出现在浏览器窗口的指定位置
  4. 注意伪类和伪元素的区别

Reference

  1. https://q.cnblogs.com/q/143685/

New Discovery

  1. svg标签可以直接在页面上展示,我从来都没有试过这么写
<svg t="1692856208711" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5360" width="48" height="48"><path d="M724.992 58.026667c-84.309333 0-162.474667 42.325333-214.016 111.957333C459.434667 100.352 380.928 58.026667 296.96 58.026667 145.066667 58.026667 21.504 193.194667 21.504 359.082667c0 98.986667 44.373333 168.277333 79.872 224.256C204.8 745.472 464.554667 947.2 475.477333 955.733333c10.581333 8.192 22.869333 12.288 35.498667 12.288 12.288 0 24.917333-4.096 35.157333-12.288 10.922667-8.533333 271.018667-210.261333 374.101333-372.394667 35.498667-55.978667 79.872-125.269333 79.872-224.256C1000.106667 193.194667 876.544 58.026667 724.992 58.026667L724.992 58.026667 724.992 58.026667 724.992 58.026667zM724.992 58.026667" fill="#d81e06" p-id="5361"></path></svg>

标签:定位,img,元素,绝对,height,相对
From: https://www.cnblogs.com/echo-lovely/p/17654052.html

相关文章

  • 绝对赢家!晋级美国公开杯决赛,梅西将冲击生涯第45冠!
    美国公开杯半决赛,迈阿密国际战胜辛辛那提FC,晋级决赛。迈阿密国际决赛的对手是休斯顿迪纳摩vs皇家盐湖城的胜者,决赛将于9月27日上演。梅西届时也将冲击生涯第45座冠军。梅西目前已经获得了44座冠军,位居历史第一。......
  • 代码随想录第一天|704.二分查找、27.移除元素
    二分查找对数组的要求有两点:有序无重复元素,若有重复元素则返回的元素下标不唯一边界条件是while(left<=right)代码其实是很好理解的点击查看代码classSolution{public:intsearch(vector<int>&nums,inttarget){intlength=nums.size();......
  • Fabric.js 元素选中状态的事件与样式
    本文简介带尬猴!你是否在使用Fabric.js时希望能在选中元素后自定义元素样式或选框(控制角和辅助线)的样式?如果是的话,可以放心往下读。本文将手把脚和你一起过一遍Fabric.js在对象元素选中后常用的样式设置。我将对象元素选中后的设置分成3类进行讲解:控制角辅助边其他样......
  • mysql,定位sql的事务
    定位背景:记录java的接口,是否开启事务,分析问题。@Transactional(rollbackFor=Exception.class)--------------------------------------------------------------------------------SHOWFULLPROCESSLIST;SELECT*FROM`business_bed`SHOWGLOBALSTATUSLIKE'Com%';SHO......
  • Python移除重复元素
    第一种写法:通过set特性去重,但是不保证顺序,无序的a=["1",1,"1",2]a=list(set(a))print(a)结果:[1,2,'1']第二种写法:可以保证和原来顺序一样a=["1",1,"1",2]b=[]foriina:ifinotinb:b.append(i)print(b)结果:[&#......
  • YOLO v5与双目测距结合,实现目标的识别和定位测距
    YOLOv5与双目测距结合,实现目标的识别和定位测距1、首先安装YOLOv52、数据集的标定3、双目测距代码的单独运行调试4、YOLOv5与双目测距的代码的结合5、最终识别测距效果6、代码下载调试运行7、最终演示视频欢迎各位点赞投币收藏哦......
  • vue中$event的元素属性
    <template><div><button@click="clickFun($event)">点击</button></div></template><script>exportdefault{data(){return{}},methods:{check(event)......
  • python+selenium+pytest-(1)_8种元素定位方法
    方法一:元素ID定位username=driver.find_element(By.ID,"username")方法二:元素class定位login=driver.find_element(By.CLASS_NAME,"login")方法三:元素name定位password=driver.find_element(By.NAME,"password")方法四:元素tag定位p=driver.find_eleme......
  • 20230822-实现两盒子垂直水平居中定位方式
    24/100保存草稿发布文章加粗斜体标题删除线无序有序待办引用代码块运行代码资源绑定图片视频表格超链接投票导入导出保存撤销重做历史new模版使用富文本编辑器目录创作助手语法说明#代码部分```<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><meta......
  • 什么是 HTML 编程里页面元素的 margin 属性
    在前端开发中,margin是一种重要的CSS属性,用于控制元素之间的空间和距离。它不仅影响元素的外观,还可以影响整个页面的布局。本文将详细解释margin的概念、用途以及通过示例演示如何在HTML中使用margin来控制元素之间的间距。概念margin是CSS(层叠样式表)中的一个属性,用于控制元素的......