zoukankan      html  css  js  c++  java
  • CSS3 FLEXBOX轻松实现元素的水平居中和垂直居中

      1 <!DOCTYPE html>
      2 <html>
      3 
      4     <head>
      5         <meta charset="UTF-8">
      6         <title></title>
      7     </head>
      8 
      9     <body>
     10         <!--1.清除输入框内的空格-->
     11         <!--<input type="text" onBlur="replaceSpace(this)" />
     12         <script type="text/javascript">
     13             function replaceSpace(obj) {
     14                 obj.value = obj.value.replace(/s/gi, '')
     15             }
     16         </script>-->
     17 
     18         <!--2.CSS3 FLEXBOX轻松实现元素的水平居中和垂直居中-->
     19         <!--①单个元素水平居中-->
     20         <!--<style>
     21             .box{
     22                 display: -webkit-flex;
     23                 display: -ms-flexbox;
     24                 display: flex;
     25                 justify-content: center;
     26                 background: #0099cc;
     27             }
     28             h1{
     29                 color: #FFF
     30             }
     31         </style>
     32         <div class="box">
     33             <h1>flex弹性布局justify-content属性实现元素水平居中</h1>
     34         </div>-->
     35 
     36         <!--②多个h1元素水平居中-->
     37         <!--<style>
     38             .box{
     39                 display: flex;
     40                 justify-content: center;
     41                  100%;
     42                 background: #0099cc
     43             }
     44             h1{
     45                 font-size: 1rem;
     46                 padding: 1rem;
     47                 border: 1px dashed #FFF;
     48                 color: #FFF;
     49                 font-weight: normal;
     50             }
     51         </style>
     52         <div class="box">
     53             <h1>flex弹性布局justify-content属性实现元素水平居中</h1>
     54             <h1>flex弹性布局justify-content属性实现元素水平居中</h1>
     55             <h1>flex弹性布局justify-content属性实现元素水平居中</h1>
     56         </div>-->
     57 
     58         <!--③多个h1标签并排垂直居中-->
     59         <!--<style>
     60             .box{
     61                 display: flex;
     62                  980px;
     63                 height: 30rem;
     64                 align-items:center;
     65                 background: #0099cc
     66             }
     67             h1{
     68                 font-size: 1rem;
     69                 padding: 1rem;
     70                 border: 1px dashed #FFF;
     71                 color: #FFF
     72             }
     73         </style>
     74         <div class="box">
     75             <h1>flex弹性布局justify-content属性实现元素水平居中</h1>
     76             <h1>flex弹性布局justify-content属性实现元素水平居中</h1>
     77             <h1>flex弹性布局justify-content属性实现元素水平居中</h1>
     78         </div>-->
     79 
     80         <!--④同时包含水平,垂直居中-->
     81         <!--<style>
     82             body{display: flex;justify-content:center}
     83             .box{
     84                 display: flex;
     85                  980px;
     86                 height: 30rem;
     87                 justify-content:center;
     88                 background: #0099cc;
     89                 flex-direction:column;
     90                 align-items:center;
     91             }
     92             h1{
     93                 display: flex;
     94                 justify-content:center;
     95                 font-size: 1rem;
     96                 padding: 1rem;
     97                 border: 1px dashed #FFF;
     98                 color: #FFF;
     99                  28rem
    100             }
    101         </style>
    102         <div class="box">
    103             <h1>flex弹性布局justify-content属性实现元素垂直居中</h1>
    104             <h1>flex弹性布局justify-content属性实现元素垂直居中</h1>
    105             <h1>flex弹性布局justify-content属性实现元素垂直居中</h1>
    106             <h1>flex弹性布局justify-content属性实现元素垂直居中</h1>
    107         </div>-->
    108 
    109         <!--3.CSS3中的px,em,rem,vh,vw辨析-->
    110         <!--1、px:像素,精确显示
    111         2、em:继承父类字体的大小,相当于“倍”,如:浏览器默认字体大小为16px=1em,始终按照div继承来的字体大小显示,进场用于移动端
    112           em换算工具:http://www.runoob.com/tags/ref-pxtoemconversion.html
    113         3、rem:与em类似,rem是继承根节点的属性(即<html>标签),其他的与em相同
    114         4、vh:当前可见高度的1%=1vh
    115                  区别是:当div中没有内容时,height=100%,则高度不显示出来
    116                当div中没有内容时,height=100vh,则高度依然能显示出来
    117         5、vw:当前可见宽度的1%=1vw
    118                区别是:当div中没有内容时,width=100%,则宽度不显示出来
    119                当div中没有内容时,width=100vh,则宽度依然能显示出来-->
    120 
    121         <!--4.CSS全局控制-->
    122         <!--<style>
    123             body {
    124                 margin: 0;
    125                 padding: 0;
    126                 font-size: 14px;
    127                 line-height: 22px;
    128                 height: auto;
    129                 font-family: "微软雅黑";
    130                 color: #3e3938;
    131                 -webkit-text-size-adjust: none;
    132             }
    133             body,div,p,h1,h2,h3,h4,h5,h6,ul,ol,li,dl,dd,dt,img,form {
    134                 padding: 0px;
    135                 margin: 0px;
    136                 border: 0;
    137                 font-size: 14px;
    138             }
    139             .clear {
    140                 clear: both;
    141             }
    142             a:link,
    143             a:visited {
    144                 text-decoration: none;
    145             }
    146             a:hover {
    147                 text-decoration: none;
    148             }
    149             a:focus {
    150                 outline: none;
    151             }
    152             a {
    153                 text-decoration: none;
    154                 blr: expression(this.onFocus=this.blur());
    155             }
    156             a {
    157                 outline: none;
    158             }
    159             ul,
    160             ol li {
    161                 list-style: none;
    162             }
    163         </style>-->
    164 
    165         <!--5.css水平垂直居中(绝对定位居中)-->
    166         <!--<style>
    167             #box {
    168                 position: relative;
    169                 height: 500px;
    170                 background: #ddd;
    171             }
    172             .child {
    173                  100px;
    174                 height: 100px;
    175                 background: #269ABC;
    176                 margin: auto;
    177                 position: absolute;
    178                 top: 0;
    179                 right: 0;
    180                 bottom: 0;
    181                 left: 0;
    182             }
    183         </style>
    184         <div id="box">
    185             <div class="child"></div>
    186         </div>-->
    187 
    188         <!--6.css水平垂直居中(绝对定位居中)-->
    189         <!--<style type="text/css">
    190             ul li
    191             {
    192                 list-style-type:georgian;
    193                 text-align:left;
    194              }
    195             .mark
    196             {
    197                 140px;
    198                 height:40px;
    199                 color:Olive;
    200                 text-align:center;
    201                 line-height:40px;
    202                 margin:5px;
    203                 float:left;
    204              }
    205               .redball
    206             {
    207                 40px;
    208                 height:40px;
    209                 border-radius:20px;
    210                 background-color:Red;
    211                 text-align:center;
    212                 line-height:40px;
    213                 margin:5px;
    214                 float:left;
    215             }
    216             .ball
    217             {
    218                 40px;
    219                 height:40px;
    220                 border-radius:20px;
    221                 background-color:Aqua;
    222                 text-align:center;
    223                 line-height:40px;
    224                 margin:5px;
    225                 float:left;
    226             }
    227             .line
    228             {
    229                 clear:left;
    230              }
    231             header
    232             {
    233                 height:80px;
    234                 border:1px solid gray;
    235             }
    236             .left
    237             {
    238                 border:1px solid gray;
    239                 float:left;
    240                 30%;
    241                 height:480px;
    242                 margin-left:0px;
    243                 margin-right:0px;
    244                 
    245             }
    246             aside
    247             {
    248                 text-align:center;
    249             }
    250             section
    251             {
    252                 69.5%;
    253                 float:left;
    254                 height:480px;
    255                 border:1px solid gray;
    256                 margin-left:0px;
    257                 margin-right:0px;
    258             }
    259             footer
    260             {
    261                 clear:left;
    262                 height:60px;
    263                 border:1px solid gray;
    264             }
    265             input[type="button"]
    266             {
    267                 80px;
    268                 text-align:center;
    269                 margin-top:10px;
    270              }
    271         </style>
    272         
    273         <header>
    274             <h1>直接插入排序(Straight Insertion Sort)Demo</h1>
    275         </header>
    276         <aside class="left">
    277         
    278             <input type="button" id="btnInit" value="Init" onclick="initDiv();" />
    279             <br />
    280             <input type="button" id="btnSetValue" value="SetValue" onclick="setElementsValue();" />
    281             <br />
    282             <input type="button" id="btnSort" value="Sort" onclick="setSISortValue();" />
    283             <br />
    284             <h3>直接插入排序(Straight Insertion Sort)</h3>
    285             <ul>
    286                 <li>将一个记录插入到已排序好的有序表中,从而得到一个新,记录数增1的有序表。</li>
    287                 <li>即:先将序列的第1个记录看成是一个有序的子序列,然后从第2个记录逐个进行插入,直至整个序列有序为止。</li>
    288                 <li>如果碰见一个和插入元素相等的,那么插入元素把想插入的元素放在相等元素的后面。所以,相等元素的前后顺序没有改变。</li>
    289                 <li>从原无序序列出去的顺序就是排好序后的顺序,所以插入排序是稳定的。</li>
    290                 <li>时间复杂度O(n<sup>2</sup>)</li>
    291             </ul>
    292         </aside>
    293         <section id="mainArea">
    294         
    295         </section>
    296         <footer>
    297             这是底部信息
    298         </footer>
    299         <script type="text/javascript">
    300             function initDiv() {
    301                 var mainArea = document.getElementById("mainArea");
    302                 for (var i = 0; i < 8; i++) {
    303                     var newDivLine = document.createElement("div");
    304                     newDivLine.setAttribute("class", "line");
    305                     mainArea.appendChild(newDivLine);
    306                     for (var j = 0; j < 9; j++) {
    307                         var newDiv = document.createElement("div");
    308                         var id = i.toString() + j.toString();
    309                         newDiv.setAttribute("id", id);
    310                         if (j < 8) {
    311                             newDiv.setAttribute("class", "ball");
    312                         } else {
    313                             newDiv.setAttribute("class", "mark");
    314                         }
    315                         newDivLine.appendChild(newDiv);
    316                     }
    317                 }
    318             }
    319     
    320             //初始元素赋值
    321             var arrTmp = [4, 6, 8, 7, 9, 2, 10, 1];
    322             function setElementsValue() {
    323                 for (var i = 0; i < arrTmp.length; i++) {
    324                     document.getElementById("0" + i.toString()).innerText = arrTmp[i];
    325                 }
    326                 document.getElementById("08").innerText = "原始数据";
    327             }
    328     
    329             //排序
    330             function setSISortValue() {
    331                 for (var i = 1; i < arrTmp.length; i++) {
    332                     var m = 0;//为了记录插入的位置,方便标记
    333                     //若第i个元素大于i-1元素,直接插入。小于的话,移动有序表后插入
    334                     if (arrTmp[i] < arrTmp[i - 1]) {
    335                         var x = arrTmp[i]; //复制为哨兵(临时变量),即存储待排序元素  
    336                         var j = i - 1;
    337                         arrTmp[i] = arrTmp[i - 1]; //先后移一个元素 
    338                         //循环查找在有序表的插入位置,如果要插入的值小于,则继续查找,并将元素后移。
    339                         while (x < arrTmp[j]) {
    340                             arrTmp[j + 1] = arrTmp[j];
    341                             j--;
    342                         }
    343                         //查找完毕后,插入到正确位置(即要插入的值大于前面的元素)
    344                         arrTmp[j + 1] = x;
    345                         m = j + 1;
    346                     } else {
    347                         m = i;
    348                     }
    349                     //显示出来
    350                     for (var k = 0; k < arrTmp.length; k++) {
    351                         document.getElementById((i).toString() + k.toString()).innerText = arrTmp[k];
    352                         if (m == k) {
    353                             document.getElementById((i).toString() + (k).toString()).setAttribute("class", "redball");
    354                         }
    355                     }
    356                     document.getElementById((i).toString() + "8").innerText = "第 " + (i).toString() + " 趟排序";
    357                 }
    358             }
    359         </script>-->
    360 
    361         <!--7.css水平垂直居中(绝对定位居中)-->
    362         <!--<style>
    363             .container{
    364                  500px;
    365                 height: 400px;
    366                 border: 2px solid #379;
    367                 position: relative;
    368             }
    369             .inner{
    370                  480px;
    371                 height: 380px;
    372                 background-color: #746;
    373                 position: absolute;
    374                 top: 50%;
    375                 left: 50%;
    376                 margin-top: -190px;
    377                 margin-left: -240px;
    378             }
    379         </style>
    380         <div class="container">
    381             <div class="inner"></div>
    382         </div>-->
    383 
    384         <!--8.css水平垂直居中(绝对定位居中)-->
    385         <!--<style>
    386             div{
    387                  300px;
    388                 height: 300px;
    389                 border: 3px solid #555;
    390                 display: table-cell;
    391                 vertical-align: middle;
    392                 text-align: center;
    393             }
    394             img{
    395                 vertical-align: middle;
    396             }
    397         </style>
    398         <div>
    399             <img src="img/HBuilder.png" />
    400         </div>-->
    401 
    402         <!--9.css水平垂直居中(绝对定位居中)-->
    403         <!--<style>
    404             .container{
    405                  300px;
    406                 height: 200px;
    407                 border: 3px solid #546461;
    408                 display: -webkit-flex;
    409                 display: flex;
    410                 -webkit-align-items: center;
    411                 align-items: center;
    412                 -webkit-justify-content: center;
    413                 justify-content: center;
    414             }
    415             .inner{
    416                 border: 3px solid #458761;
    417                 padding: 20px;
    418             }
    419         </style>
    420         <div class="container">
    421             <div class="inner">
    422                      我在容器中水平垂直居中
    423             </div>
    424         </div>-->
    425 
    426 </html>
  • 相关阅读:
    摄影/中秋美食
    摄影/不是花中偏爱菊
    基础知识(3)- Java的基本程序设计结构
    8、分页
    洛谷——P2440 木材加工
    洛谷——P1258 小车问题
    洛谷——P1832 A+B Problem(再升级)
    洛谷——P1802 5倍经验日
    洛谷—— P1803 凌乱的yyy
    网络基础之网络协议
  • 原文地址:https://www.cnblogs.com/panda-ling/p/6323459.html
Copyright © 2011-2022 走看看