Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html “布局”;标签-价值“;不使用桌子而居中_Html_Css_Tabular - Fatal编程技术网

Html “布局”;标签-价值“;不使用桌子而居中

Html “布局”;标签-价值“;不使用桌子而居中,html,css,tabular,Html,Css,Tabular,因此,您通常会有许多标签(让我们使用名称、年龄、颜色)和每个标签的值 如果我把它们放在一个2列3行的表格中,我可以确保这些值(让我们使用Steve,19,红色)都从相同的水平位置开始 如果我想让那列左对齐,如果我也想让标签列右对齐。然后,这两列将在表的中心很好地相交 如果不使用桌子,又不必设置固定的宽度,我怎么能这样做呢 我听到你在说什么,但我可以提醒你,表格可以用于表格数据 但要使用纯CSS实现这一点,您可以将标签和值向左浮动,然后清除,并将这两个元素设置为显示50%宽度的块。我想您需要jav

因此,您通常会有许多标签(让我们使用名称、年龄、颜色)和每个标签的值

如果我把它们放在一个2列3行的表格中,我可以确保这些值(让我们使用Steve,19,红色)都从相同的水平位置开始

如果我想让那列左对齐,如果我也想让标签列右对齐。然后,这两列将在表的中心很好地相交


如果不使用桌子,又不必设置固定的宽度,我怎么能这样做呢

我听到你在说什么,但我可以提醒你,表格可以用于表格数据


但要使用纯CSS实现这一点,您可以将标签和值向左浮动,然后清除,并将这两个元素设置为显示50%宽度的块。

我想您需要javascript来解决这个问题。我不相信有一个纯粹的CSS解决方案


事实上,在标签宽度可能不同的多语言网站中工作时,使用固定宽度可能是一个问题,或者宽度可能会根据浏览器设置(如文本大小)而变化…

您将不得不解决为标签使用固定宽度的问题(如果使用纯CSS路线)以下是您想要完成的最低要求(从中提取)

CSS:

HTML:

我举了一个现场的例子


考虑到您所引用的用例,我实际上认为表格是更好的方式,但是我有一个。

您可以使用UL LI列表来安排这个选项

<fieldset>

<legend>Sign-up Form</legend>
<form name="signup" action="index.html" method="post">
<ul> 
<li> <label for="name">Name</label>
<input type="text" name="name" id="name" size="30" />
</li> 
<li> <label for="email">Email</label>
<input type="text" name="email" id="email" size="30" />
</li>



<li> <label for="psw">Password</label>
<input type="text" name="psw" id="psw" size="30" />
</li>



<li> <label for="free">Free Subscrition</label>
<input type="radio" name="subscription" id="free"/>
</li>

<li><label for="submit"></label>
<button type="submit" id="submit">Send</button> </li> 
<ul>
</form>

</fieldset>

css

fieldset ul, fieldset li{
border:0; margin:0; padding:0; list-style:none;
}
fieldset li{
clear:both;
list-style:none;
padding-bottom:10px;
}

fieldset input{
float:left;
}
fieldset label{
width:140px;  // or you give width in % here
float:left;
}
 

报名表
  • 名字
  • 电子邮件
  • 密码
  • 免费订阅
  • 发送
    • css 现场集ul,现场集li{ 边框:0;边距:0;填充:0;列表样式:无; } 李场集{ 明确:两者皆有; 列表样式:无; 垫底:10px; } 字段集输入{ 浮动:左; } 字段集标签{ 宽度:140px;//或者在这里用%表示宽度 浮动:左; }
我也听到了你说的话(lol),只是用表来表示一个值似乎不太合适,在我眼里,它更像是一个列表我不能有固定的宽度,因为标签将有可变的宽度和lo!当你谈论其他完全不同的东西时,当你提到一个HTML元素时,你会感到困惑。伙计们,这是“标签-值对”,而不是
标签
-
输入
我想我们在这里讨论的表单对。问题是“不必设置固定宽度”,所以你的
宽度:140px
不起作用。感谢你的输入,无法设置宽度的原因是由于一个多语言网站。引用这些似乎不是css解决方案,我将把你的答案标记为我能看到的最接近的答案!谢谢
<form>
    <div><label>Item 1</label><input /></div>
    <div><label>Item 2</label><input /></div>
    <div><label>Item 3</label><textarea></textarea></div>
</form>
var largestWidth = 0;
$('label').each(
    function() {
        if ($(this).width() > largestWidth) {
            largestWidth = $(this).width();
        }
    });

$('label').each(
    function() {
        $(this).width(largestWidth);
    });
<fieldset>

<legend>Sign-up Form</legend>
<form name="signup" action="index.html" method="post">
<ul> 
<li> <label for="name">Name</label>
<input type="text" name="name" id="name" size="30" />
</li> 
<li> <label for="email">Email</label>
<input type="text" name="email" id="email" size="30" />
</li>



<li> <label for="psw">Password</label>
<input type="text" name="psw" id="psw" size="30" />
</li>



<li> <label for="free">Free Subscrition</label>
<input type="radio" name="subscription" id="free"/>
</li>

<li><label for="submit"></label>
<button type="submit" id="submit">Send</button> </li> 
<ul>
</form>

</fieldset>

css

fieldset ul, fieldset li{
border:0; margin:0; padding:0; list-style:none;
}
fieldset li{
clear:both;
list-style:none;
padding-bottom:10px;
}

fieldset input{
float:left;
}
fieldset label{
width:140px;  // or you give width in % here
float:left;
}