最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

html - Item location within a Div with Bootstrap 5.3 not displaying as I would expect - Stack Overflow

programmeradmin3浏览0评论

To give you a bit of background I am not new to development and have done a variety of different languages however my level of HTML knowledge while growing is still very much more towards the basic level than the advanced.

Saying that, I am currently working on developing this and as part of this I am working on a project where I am creating a fictitious customer portal that is completely responsive. I have opted to go with Bootstrap 5.3 for this and I am getting on well with it however I am facing a particular issue that I can't seem to sort out I am hoping some of you far more experienced and knowledgeable folk on here can assist me with and try and explain it to me.

So the example HTML I have is as follows:

<link href="/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
<div class="layout-fixed sidebar-expand-lg sidebar-mini bg-body-tertiary">
 <div class="app-wrapper">     
  <main class="app-main">
   <div class="app-content-header">
    <div class="container-fluid">
     <div class="row">
      <div class="col-sm-6"><h3 class="mb-0">Home</h3>
      </div>
      <div class="col-sm-6">
       <ol class="breadcrumb float-sm-end">
        <li class="breadcrumb-item active"><a href="#">Home</a></li>
       </ol>
      </div>
     </div>
    </div>
   </div>
   <div class="app-content">
    <div class="row">
     <div class="col-md-6">
      <div class="card-body">
       <div class="card card-info card-outline mb-3">
        <div class="card-header">
         <div class="card-title">Quickly Connect with  us on Whatsapp</div>
         </div>
         <div class="card-body">
          <div class="row g-3">
           <div class="col-12">
            <div class="info-box">
             <div class="info-box-content">
              <div class="col-md-6">
               <div class="info-box">
                <button type="button" class="btn btn-success mb-2">Click here to start conversation</button>
               </div>
               <!---Using the text-center as identified in bootstrap help-->
               <div class="info-box text-center">   
                <button type="button" class="btn btn-success mb-2 text-center">Click here to start conversation</button>
               </div>
              </div>        
             </div>
            </div>
           </div>
          </div>
         </div>                             
        </div>
       </div>
      </div>
     </div>
    </div>
   </div>
  </main>
 </div>
</div>
<script src="/[email protected]/js/bootstrap.min.js"></script>

To give you a bit of background I am not new to development and have done a variety of different languages however my level of HTML knowledge while growing is still very much more towards the basic level than the advanced.

Saying that, I am currently working on developing this and as part of this I am working on a project where I am creating a fictitious customer portal that is completely responsive. I have opted to go with Bootstrap 5.3 for this and I am getting on well with it however I am facing a particular issue that I can't seem to sort out I am hoping some of you far more experienced and knowledgeable folk on here can assist me with and try and explain it to me.

So the example HTML I have is as follows:

<link href="https://cdn.jsdelivr/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
<div class="layout-fixed sidebar-expand-lg sidebar-mini bg-body-tertiary">
 <div class="app-wrapper">     
  <main class="app-main">
   <div class="app-content-header">
    <div class="container-fluid">
     <div class="row">
      <div class="col-sm-6"><h3 class="mb-0">Home</h3>
      </div>
      <div class="col-sm-6">
       <ol class="breadcrumb float-sm-end">
        <li class="breadcrumb-item active"><a href="#">Home</a></li>
       </ol>
      </div>
     </div>
    </div>
   </div>
   <div class="app-content">
    <div class="row">
     <div class="col-md-6">
      <div class="card-body">
       <div class="card card-info card-outline mb-3">
        <div class="card-header">
         <div class="card-title">Quickly Connect with  us on Whatsapp</div>
         </div>
         <div class="card-body">
          <div class="row g-3">
           <div class="col-12">
            <div class="info-box">
             <div class="info-box-content">
              <div class="col-md-6">
               <div class="info-box">
                <button type="button" class="btn btn-success mb-2">Click here to start conversation</button>
               </div>
               <!---Using the text-center as identified in bootstrap help-->
               <div class="info-box text-center">   
                <button type="button" class="btn btn-success mb-2 text-center">Click here to start conversation</button>
               </div>
              </div>        
             </div>
            </div>
           </div>
          </div>
         </div>                             
        </div>
       </div>
      </div>
     </div>
    </div>
   </div>
  </main>
 </div>
</div>
<script src="https://cdn.jsdelivr/npm/[email protected]/js/bootstrap.min.js"></script>

This displays the following image:

While I am not unhappy with this and the responsive side of things is working really will I was hoping to a stage further, and make it more visually appealing and was hoping to transfer it to more like the following edited image.

Expected Output:

I have been looking through all the examples and documentation on the Bootstrap website and I have found using the text-centre class at the top level div to centralise the content within it however that isn't working for the button. I have tried adding it on several levels, and it never centralises the button.

Share Improve this question edited Feb 15 at 21:10 j08691 208k32 gold badges269 silver badges280 bronze badges asked Feb 15 at 17:17 Luke Frost IEng MIMechELuke Frost IEng MIMechE 33 bronze badges New contributor Luke Frost IEng MIMechE is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct.
Add a comment  | 

1 Answer 1

Reset to default 0

Bootstrap does indeed center text with the class text-center. You can center blocks with mx-auto see: horizontally centering.

In your case you want to center a text, but you have to give it room to center. You didn't. The parent is a <div class="info-box"> which will only get a wide as it needs to, to fit its content, and you also have a col-md-6.

To show you that centering does work, see a cleaner version here:

<link href="https://cdn.jsdelivr/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
<div class="layout-fixed sidebar-expand-lg sidebar-mini bg-body-tertiary">
 <div class="app-wrapper">     
  <main class="app-main">
   <div class="app-content-header">
    <div class="container-fluid">
     <div class="row">
      <div class="col-sm-6"><h3 class="mb-0">Home</h3>
      </div>
      <div class="col-sm-6">
       <ol class="breadcrumb float-sm-end">
        <li class="breadcrumb-item active"><a href="#">Home</a></li>
       </ol>
      </div>
     </div>
    </div>
   </div>
   <div class="app-content">
    <div class="row">
     <div class="col-md-6">
      <div class="card-body">
       <div class="card card-info card-outline mb-3">
        <div class="card-header">
         <div class="card-title">Quickly Connect with  us on Whatsapp</div>
         </div>
         <div class="card-body">
          <div class="row g-3">
           <div class="col-12">
             <p>
              <button type="button" class="btn btn-success mb-2">Click here to start conversation</button>
             </p>
             <p class="text-center">
              <button type="button" class="btn btn-success mb-2">Click here to start conversation</button>
             </p>  
           </div>
          </div>
         </div>                             
        </div>
       </div>
      </div>
     </div>
    </div>
   </div>
  </main>
 </div>
</div>
<script src="https://cdn.jsdelivr/npm/[email protected]/js/bootstrap.min.js"></script>

If you do need a <div class="info-box"> around the buttons, make sure they have the CSS style: width: 100%. That is: Use the full width of the parent.

发布评论

评论列表(0)

  1. 暂无评论