如何使用CSS将HTML元素干净地放在同一行上

时间:2017-01-11 13:56:27

标签: javascript jquery html css jquery-mobile

我的问题是如何将两个元素干净地放在同一条线上。

这是我的小提琴:https://jsfiddle.net/duqpn0wd/

CSS:

    .inline-block {
    display: inline-block;
    }

打包机:

    <div class="inline-block">
    </div>

在小提琴中,您可以看到一个带有按钮的文本,但是我需要它们保持对齐并且右对齐,如下所示:

TEXT BUTTON

现在使用内联块有帮助,但我需要每个元素都是内联的,之后的行也是内联的,这样就可以合并到我现有的第一行中:

TEXT BUTTON TEXT BUTTON

有关如何正确执行此操作的任何想法?

4 个答案:

答案 0 :(得分:6)

float: left;内的p使用.inline-block

&#13;
&#13;
.inline-block {
    display: inline-block;
    width: 100%;
 }
 .inline-block p{
   float: left;
 }
&#13;
<link href="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>

<div data-role="collapsible">
  <h3> Alarm </h3>
  <div class="inline-block">
    <p>Alarm Horn:</p>
    <select name="flipswitch-1" id="flipswitch-1" data-role="flipswitch" data-wrapper-class="wide-flipswitch">
      <option value="off">OFF</option>
      <option value="on">ON</option>
    </select>
  </div>
  <div class="inline-block">
    <p>Alarm Light:</p>
    <select name="flipswitch-2" id="flipswitch-2" data-role="flipswitch" data-wrapper-class="wide-flipswitch">
      <option value="off">OFF</option>
      <option value="on">ON</option>
    </select>
  </div>
</div>

<div data-role="collapsible">
  <h3> Fault </h3>
  <div class="inline-block">
    <label for="number-input-1">Start Fault Time:</label>
    <button id="number-input-1" class="keyboard-input" data-inline="true">100</button>
    <label for="number-input-1">seconds</label>
  </div>
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

只需将此代码添加到CSS

即可
.inline-block > p {
  float: left;
}

答案 2 :(得分:0)

只需使用此

修改您的CSS

.inline-block {
	display: inline-block;
}
p{
  display:inline-block;
}
select{
  display:inline-block;
}
<link href="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>

<div data-role="collapsible">
<h3> Alarm </h3>
<div class="inline-block">
<p>Alarm Horn:</p>
<select name="flipswitch-1" id="flipswitch-1" data-role="flipswitch" data-wrapper-class="wide-flipswitch">
  <option value="off">OFF</option>
  <option value="on">ON</option>
</select>
</div>
<div class="inline-block">
<p>Alarm Light:</p>
<select name="flipswitch-2" id="flipswitch-2" data-role="flipswitch" data- wrapper-class="wide-flipswitch">
<option value="off">OFF</option>
<option value="on">ON</option>
</select>
</div>
</div>

<div data-role="collapsible">
<h3> Fault </h3>
<div class="inline-block">
<label for="number-input-1">Start Fault Time:</label>
<button id="number-input-1" class="keyboard-input" data-   inline="true">100</button>
<label for="number-input-1">seconds</label>
</div>
</div>

答案 3 :(得分:0)

您可以将CSS指定为:

.inline-block { /* select the class */
display: inline-block;
}

.inline-block *{ /* select all the child element  */
 display: inline-block;
}

将任何元素添加到您的类中将在一行中对齐。