css如何讓浮動(dòng)元素水平居中
對(duì)于定寬的非浮動(dòng)元素我們可以在CSS中用 margin:0 auto 進(jìn)行水平居中,對(duì)于不定寬的浮動(dòng)元素我們也有一個(gè)常用的技巧解決它的水平居中問(wèn)題。解決水平居中問(wèn)題有很多種方法,下面先給大家分享一下三種方法,希望能幫助到大家。
方法一:
1、HTML 部分:
<div class="box"> <p>我是浮動(dòng)的</p> <p>我也是居中的</p> </div>
2、CSS 部分:
.box{
float:left;
position:relative;
left:50%;
}
p{
float:left;
position:relative;
right:50%;
}
這樣看來(lái)就很簡(jiǎn)單了吧,父元素和子元素同時(shí)左浮動(dòng),然后父元素相對(duì)左移動(dòng)50%,再然后子元素相對(duì)右移動(dòng)50%,或者子元素相對(duì)左移動(dòng)-50%也就可以了。如此簡(jiǎn)單如此神奇。
方法二:
HTML 代碼
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>頁(yè)面浮動(dòng)元素的水平居中</title>
<style type="text/css">
.clearfix:after { content:""; height:0; visibility:hidden; display:block; clear:both; }
.clearfix { zoom:1; }
.wrap { margin:20px auto; padding:10px 0; background:orange; overflow:hidden; position:relative; }
.inwrap{ float:left; position:relative; left:50%;}
.page { float:left; position:relative; left:-50%; }
.page li { float:left;margin:0 5px; }
.page li a { display:block; padding:2px 9px; background:white; border:1px solid red; float:left;}
</style>
</head>
<body>
<div class="wrap clearfix">
<div class="inwrap">
<ul class="page">
<li> <a href="#">上一頁(yè)</a> </li>
<li> <a href="#">1</a> </li>
<li> <a href="#">2</a> </li>
<li> <a href="#">3</a> </li>
<li> <a href="#">4</a> </li>
<li> <a href="#">2</a> </li>
<li> <a href="#">3</a> </li>
<li> <a href="#">2</a> </li>
<li> <a href="#">3</a> </li>
<li> <a href="#">4</a> </li>
<li> <a href="#">5</a> </li>
<li> <a href="#">6</a> </li>
<li> <a href="#">下一頁(yè)</a> </li>
</ul>
</div>
</div>
</body>
</html>
父元素和子元素同時(shí)左浮動(dòng),然后父元素相對(duì)左移動(dòng)50%,再然后子元素相對(duì)左移動(dòng)-50%。
方法三:
html代碼
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>頁(yè)面元素的水平居中</title>
<style type="text/css">
* { margin:0; padding:0; list-style:none; font-size:14px; }
.clearfix:after { content:""; height:0; visibility:hidden; display:block; clear:both; }
.clearfix { zoom:1; }
a{ text-decoration:none;}
h1{ text-align:center; padding:10px; font-size:20px; margin:30px 0;}
.wrap { margin:20px auto; padding:10px 0; background:orange; overflow:hidden; position:relative; }
.inwrap{ float:left; position:relative; left:50%;}
.page { float:left; position:relative; left:-50%; }
.page li { float:left;margin:0 5px; }
.page li a { display:block; padding:2px 9px; background:white; border:1px solid red; float:left;}
</style>
</head>
<body>
<h1>頁(yè)面元素的水平居中</h1>
<h2>浮動(dòng)方式:</h2>
<div class="wrap clearfix">
<div class="inwrap">
<ul class="page">
<li> <a href="#">上一頁(yè)</a> </li>
<li> <a href="#">1</a> </li>
<li> <a href="#">2</a> </li>
<li> <a href="#">3</a> </li>
<li> <a href="#">4</a> </li>
<li> <a href="#">2</a> </li>
<li> <a href="#">3</a> </li>
<li> <a href="#">2</a> </li>
<li> <a href="#">3</a> </li>
<li> <a href="#">4</a> </li>
<li> <a href="#">5</a> </li>
<li> <a href="#">6</a> </li>
<li> <a href="#">下一頁(yè)</a> </li>
</ul>
</div>
</div>
</body>
</html>
這里也可以多套一層的方式設(shè)置left:-50%,更合理,也可以避免一些不必要的IE BUG。舉一反三,這種float元素居中的方式其實(shí)可以延展應(yīng)用到很多需要浮動(dòng)元素又居中的情況。
以上通過(guò)三種方法講解了css如何讓浮動(dòng)元素水平居中,后續(xù)本網(wǎng)站還會(huì)持續(xù)更新有關(guān)js、jq、css、php、c#等編程方面的知識(shí),敬請(qǐng)關(guān)注本站,謝謝。
相關(guān)文章
JavaScript?ESLint插件保姆級(jí)使用教程
ESLint最初是由Nicholas C. Zakas 于2013年6月創(chuàng)建的開(kāi)源項(xiàng)目。它的目標(biāo)是提供一個(gè)插件化的javascript代碼檢測(cè)工具2022-08-08
基于JavaScript實(shí)現(xiàn)圖片裁剪功能
在前端開(kāi)發(fā)中,當(dāng)遇到圖片或頭像上傳等功能時(shí),有尺寸分辨率限制的話,就需要用到圖片的裁剪功能。本文為大家介紹了JavaScript實(shí)現(xiàn)圖片裁剪功能的示例代碼,希望對(duì)大家有所幫助2023-02-02
簡(jiǎn)單了解JavaScript arguement原理及作用
這篇文章主要介紹了簡(jiǎn)單了解JavaScript arguement原理及作用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-05-05
JavaScript運(yùn)動(dòng)框架 多值運(yùn)動(dòng)(四)
這篇文章主要為大家詳細(xì)介紹了JavaScript運(yùn)動(dòng)框架第四部分,多值運(yùn)動(dòng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05
JS運(yùn)動(dòng)框架之分享側(cè)邊欄動(dòng)畫(huà)實(shí)例
這篇文章主要介紹了JS運(yùn)動(dòng)框架之分享側(cè)邊欄動(dòng)畫(huà),實(shí)例分析了javascript操作div及css的技巧,需要的朋友可以參考下2015-03-03
深入理解在JS中通過(guò)四種設(shè)置事件處理程序的方法
所有的JavaScript事件處理程序的作用域是在其定義時(shí)的作用域而非調(diào)用時(shí)的作用域中執(zhí)行,并且它們能存取那個(gè)作用域中的任何一個(gè)本地變量。但是HTML標(biāo)簽屬性注冊(cè)處理程序就是一個(gè)例外??聪旅嫠姆N方式2017-03-03
swiper 自動(dòng)圖片無(wú)限輪播實(shí)現(xiàn)代碼
今天移動(dòng)端正好需要圖片觸摸滑動(dòng)效果實(shí)現(xiàn)代碼,基于swiper實(shí)現(xiàn),需要的朋友可以參考下2018-05-05
微信小程序轉(zhuǎn)化為uni-app項(xiàng)目的方法示例
這篇文章主要介紹了微信小程序轉(zhuǎn)化為uni-app項(xiàng)目的方法示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05
基于JS實(shí)現(xiàn)EOS隱藏錯(cuò)誤提示層代碼
本文給大家分享一段代碼基于js實(shí)現(xiàn)EOS隱藏錯(cuò)誤提示層,對(duì)eos隱藏提示層的相關(guān)知識(shí)感興趣的朋友一起學(xué)習(xí)吧2016-04-04

