1.使用flex布局
该方法涉及到弹性布局,具体请参考阮一峰
Flex 布局教程:语法篇 – 阮一峰的网络日志
“display:flex”实现CSS水平居中的方案简单直接。
通过display:flex实现CSS垂直居中的方法是给父元素display:flex;
通过align-items: center;属性进行垂直居中
justify-content属性进行水平居中
<!DOCTYPE html><html lang=\"en\"><head><meta charset=\"UTF-8\" /><meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" /><title>Document</title><style>* {margin: 0;padding: 0;}body,html {width: 100%;height: 100%;display: flex;align-items: center;justify-content: center;}div {width: 100px;height: 100px;background: #64c5fd;}</style></head><body><div></div></body></html>
2使用定位position
然后用transform: translate(x, y);
<!DOCTYPE html><html lang=\"en\"><head><meta charset=\"UTF-8\" /><meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" /><title>Document</title><style>* {margin: 0;padding: 0;}body,html {width: 100%;height: 100%;}div {position: relative;top: 50%;left: 50%;transform: translate(-50%, -50%);width: 100px;height: 100px;background: #64c5fd;}</style></head><body><div></div></body></html>
3.外边距结合定位来实现,其实跟上一种很相似。
margin: 0 auto;实现垂直居中
position:relative;top:50%()
transform: translateY();
<!DOCTYPE html><html lang=\"en\"><head><meta charset=\"UTF-8\" /><meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" /><title>Document</title><style>* {margin: 0;padding: 0;}body,html {width: 100%;height: 100%;}div {margin: 0 auto;position: relative;top: 50%;transform: translateY(-50%);width: 100px;height: 100px;background: #64c5fd;}</style></head><body><div></div></body></html>
看了这么多代码,咱来看一下效果图哈~
以上为个人总结,欢迎各位补充~~~