利用transform:translate使div居中显示

之前一直在用这个属性让某个div居中显示,但是一直有一个困惑,我想同时让水平和垂直都居中,可是水平方向总会有一点偏差,看一下以前怎么写的。

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title></title><style type="text/css">* {margin: 0;padding: 0;}div {position: absolute;top: 50%;left: 50%;transform: translateX(-50%);transform: translateY(-50%);width: 300px;height: 300px;background-color: pink;}</style></head><body><div></div></body>
</html>


可以看到,水平方向并没有居中,而是向右偏移了一点,今天一个偶然的机会知道我的问题出在哪里了。很简单的一个问题,但一直被忽视了。
说一下为什么会出现那样的问题,是因为我分别写了两句话
transform: translateX(-50%);
transform: translateY(-50%);
在css中写同名属性,后一个会覆盖掉前一个,所以transform: translateX(-50%);就不起作用了,也就是说你让div的left:50%之后,没有往回走div本身宽度的一半,所以就出现向右偏移了一段距离,这段距离的宽度就是div本身宽度的一半。

看一下正确的代码

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title></title><style type="text/css">* {margin: 0;padding: 0;}div {position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);/* transform: translateX(-50%);transform: translateY(-50%); */width: 300px;height: 300px;background-color: pink;}</style></head><body><div></div></body>
</html>


写成transform: translate(-50%,-50%);这样就不会有问题了,可以看到现在就正确了。

利用transform:translate使div居中显示相关推荐

  1. 使用css使div居中显示

    本例以vue为例,使用text-align: center 和margin:0 auto;实现div居中显示 1.html代码 <template>   <div class=&qu ...

  2. 使一个div居中显示的三种方法

    使一个div居中显示的三种方法 1. <!DOCTYPE html> <html lang="en"> <head><meta chars ...

  3. 如何使 一个 div 居中显示

    在 chrome 或 FireFox里,使用 body{ margin:0px; padding:0px; } div{ magin:0 auto; } 即可让一个 div 居中显示,但在 IE 里不 ...

  4. 前端笔记之Div居中显示

    前端笔记之Div居中显示 1.水平居中:给div设置一个宽度,然后添加margin:0 auto属性 <!DOCTYPE html> <html> <head>&l ...

  5. H5 div 居中显示

    H5 div 居中显示 文章目录 H5 div 居中显示 推荐:[浏览器同步测试工具](http://www.browsersync.cn/#install) H5 引入外部CSS文件 div居中显示 ...

  6. 设置div中的div居中显示

    设置div中的div居中显示 方法一. <div class='big'><div class='small'>box1</div></div>styl ...

  7. 关于div居中显示的问题

    关于div居中显示的问题 要想设置div居中显示,只需要设置margin-right:auto 和 margin-left:auto 切记,这种方法 不能设置浮动,也就是float属性.否则,达不到预 ...

  8. 使用css代码实现div居中显示 div水平居中显示

    使用css代码实现div居中显示 div水平居中显示 属性 居中显示 属性 需要的主要css代码有两个,一个为text-align:center(内容居中),另外一个为**margin:0 auto: ...

  9. 两个div并排显示 div居中显示

    div并排显示的两种方法 float:left display: inline-block; div居中显示.文字居中显示 text-align: center;margin: 0 auto

最新文章

  1. svn 回归某一个特定版本
  2. 《深入解析Android 5.0系统》——第1章,第1.2节安装开发包
  3. Linux数据文件自动迁移,linux下增加磁盘改变指定文件路径分区挂载点和迁移数据...
  4. 001_FreeMarker介绍
  5. 把base64转为blob
  6. 云图说|华为HiLens云上管理平台 花样管理多种端侧设备
  7. 沉默十个月 前锤子科技副总裁发声:坚持为粉丝做手机
  8. Android 动态申请多个权限 (第三方插件版:EasyPermissions)
  9. ie浏览器在线使用_教师资格证报名使用的不是ie系列浏览器怎么办?
  10. 2012 国庆中秋黄金周流水帐
  11. maya! board_老司机都在用的30款maya常用插件
  12. MySQL数据库维护手册
  13. MySQL中对索引的理解 特点 优势_深入理解MySQL索引和优化
  14. layUI table表格合并
  15. ElasticSearch(狂神说笔记)
  16. error ‘onMounted‘ is not defined no-undef,已解决,已更正了
  17. 盘点国内十大免费CDN提供商
  18. 第二章:阿里云ECS服务器(G5)安装配置docker
  19. 阿里巴巴 DevOps 转型后的运维平台建设
  20. 算法:next数组的求法详解

热门文章

  1. 【Vuejs】1146- 这些 Vue 的技巧你都掌握了吗?
  2. linux c语言结构体初始化,Linux c中 结构体初始化方式
  3. he canvas has been tainted by cross-origin data and tainted canvases may not be exported
  4. 为蜂鸟处理器添加DDR内存扩展
  5. galera mysql5.7.17_MySQL Galera集群搭建流程(Percona XtraDB Cluster 5.7)
  6. clickhouse pivot / unpivot
  7. Ambari——大数据平台的搭建利器之进阶篇
  8. 几维安全用代码虚拟化技术解决IOT安全核心痛点,让万物互联更安全
  9. java 置位,汇编语言置位和清除单个CPU标志位
  10. 香港CN2线路是什么意思?