【问题标题】:Centering button on website网站上的居中按钮
【发布时间】:2017-03-30 21:25:45
【问题描述】:
<body>
   <div class="navbar-collapse collapse inverse" id="navbar-header">
      <div class="container-fluid">
         <div class="about">
            <h4>text</h4>
            <p class="text</p>
            <div class="imgWrapper">
                <img id="photo" src="path/to/file"/>
            </div>
        </div>
           <div class="social">
            <p>text</p>
           </div>
       </div>
   </div>

    <div class="navbar navbar-static-top navbar-dark bg-inverse">
    <div class="container-fluid">
        <a id="logoutButton" href="logout.php" class="btn btn-lg btn-     
          primary">Logout</a>
        <button id="navbar-button" class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar-header" aria-controls="navbar-header" aria-expanded="false" aria-label="Toggle navigation"></button>
        <a href="#" class="navbar-brand">Media Manager</a>
            </div>
    </div>

    <section class="jumbotron text-xs-center">
      <div class="container">
        <h1 class="jumbotron-heading">Album list</h1>
        <p id="jumbotron-header-text" class="lead text-muted">text</p>
          <p>
              <div id="fakeButton" class="col-sm-4 col-xs-4">
                  <label for="files" class="btn btn-primary btn-lg">Select Image</label>
                  <input id="files" style="visibility:hidden;" type="file">
              </div>
          </p>
      </div>
    </section>

...

我正在尝试在我的 Jumbotron 上将 ID 为“fakeButton”的元素居中,但我失败了。我尝试过的事情:

1) CSS 选择器

#fakeButton {
    margin: auto !important;
    float: none !important;
}

2) 使用引导类文本中心:

<div class="span7 text-center"></div>

我使用的是 Bootstrap 4。大部分代码取自这个 Bootstrap 示例:

http://v4-alpha.getbootstrap.com/examples/album/

我已确保正确安装了 Bootstrap,但我似乎无法弄清楚如何使该元素居中。

【问题讨论】:

    标签: html css twitter-bootstrap button grid


    【解决方案1】:

    #fakeButton 上使用Bootstrap 的text-center 类和col-xs-12

    用途:

    <div id="fakeButton" class="col-xs-12 text-center">
        <label for="files" class="btn btn-primary btn-lg">Select Image</label>
        <input id="files" style="visibility:hidden;" type="file">
    </div>
    

    代替:

    <div id="fakeButton" class="col-sm-4 col-xs-4">
        <label for="files" class="btn btn-primary btn-lg">Select Image</label>
        <input id="files" style="visibility:hidden;" type="file">
    </div>
    

    看看下面的sn-p:

    <link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/>
    <body>
       <div class="navbar-collapse collapse inverse" id="navbar-header">
          <div class="container-fluid">
             <div class="about">
                <h4>text</h4>
                <p class="text"></p>
                <div class="imgWrapper">
                    <img id="photo" src="path/to/file"/>
                </div>
            </div>
               <div class="social">
                <p>text</p>
               </div>
           </div>
       </div>
    
        <div class="navbar navbar-static-top navbar-dark bg-inverse">
        <div class="container-fluid">
            <a id="logoutButton" href="logout.php" class="btn btn-lg btn-     
              primary">Logout</a>
            <button id="navbar-button" class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar-header" aria-controls="navbar-header" aria-expanded="false" aria-label="Toggle navigation"></button>
            <a href="#" class="navbar-brand">Media Manager</a>
                </div>
        </div>
    
        <section class="jumbotron text-xs-center">
          <div class="container">
            <h1 class="jumbotron-heading">Album list</h1>
            <p id="jumbotron-header-text" class="lead text-muted">text</p>
              <p>
                  <div id="fakeButton" class="col-xs-12 text-center">
                      <label for="files" class="btn btn-primary btn-lg">Select Image</label>
                      <input id="files" style="visibility:hidden;" type="file">
                  </div>
              </p>
          </div>
        </section>

    希望这会有所帮助!

    【讨论】:

      【解决方案2】:

      您的标记不正确,请更改以下内容:

      这个:

        <p class="text</p>
      

      到这里:

        <p class="text"></p>
      

      还有这个:

       <div id="fakeButton" class="col-sm-4 col-xs-4">
      

      到这里:

       <div id="fakeButton" class="col-xs-12">
      

      .jumbotron 元素中的 text-xs-center 类已经使按钮居中。

      按钮有display: inline-block,这就是为什么它以在其祖先中声明的text-align: center为中心。


      编辑:

      其实你还有很多事情要纠正:

      将您的#fakeButton 包装在.row 中而不是&lt;p&gt; 标记中。

      改变这个:

      <p>
        <div id="fakeButton" class="col-xs-12">
          <label for="files" class="btn btn-primary btn-lg">Select Image</label>
          <input id="files" style="visibility:hidden;" type="file">
        </div>
      </p>
      

      到这里:

      <div class="row">
        <div id="fakeButton" class="col-xs-12">
          <label for="files" class="btn btn-primary btn-lg">Select Image</label>
          <input id="files" style="visibility:hidden;" type="file">
        </div>
      </div>
      

      然后将其添加到您的 CSS 中:

      input[type="file"] {
          display: block;
      }
      

      input[type="file"] {
        display: block;
      }
      <link href="https://v4-alpha.getbootstrap.com/dist/css/bootstrap.min.css" rel="stylesheet" />
      <div class="navbar-collapse collapse inverse" id="navbar-header">
        <div class="container-fluid">
          <div class="about">
            <h4>text</h4>
            <p class="text"></p>
            <div class="imgWrapper">
              <img id="photo" src="path/to/file" />
            </div>
          </div>
          <div class="social">
            <p>text</p>
          </div>
        </div>
      </div>
      
      <div class="navbar navbar-static-top navbar-dark bg-inverse">
        <div class="container-fluid">
          <a id="logoutButton" href="logout.php" class="btn btn-lg btn-     
                primary">Logout</a>
          <button id="navbar-button" class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar-header" aria-controls="navbar-header" aria-expanded="false" aria-label="Toggle navigation"></button>
          <a href="#" class="navbar-brand">Media Manager</a>
        </div>
      </div>
      
      <section class="jumbotron text-xs-center">
        <div class="container">
          <h1 class="jumbotron-heading">Album list</h1>
          <p id="jumbotron-header-text" class="lead text-muted">text</p>
          <div class="row">
            <div id="fakeButton" class="col-xs-12">
              <label for="files" class="btn btn-primary btn-lg">Select Image</label>
              <input id="files" style="visibility:hidden;" type="file">
            </div>
          </div>
        </div>
      </section>

      【讨论】:

        【解决方案3】:

        尝试将text-center 类添加到按钮本身:

        <label for="files" class="btn btn-primary btn-lg text-center">Select Image</label>
        

        或者将你的 html 改成这样:

        <div id="fakeButton" class="col-xs-12 text-center">
            <label for="files" class="btn btn-primary btn-lg">Select Image</label>
            <input id="files" style="visibility:hidden;" type="file">
        </div>
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-04-24
          • 1970-01-01
          • 1970-01-01
          • 2014-10-17
          • 2017-11-14
          相关资源
          最近更新 更多