50

我想创建一个这样的带有标题的框:

带标题的 CSS 框

任何人都可以让我知道是否有默认的 CSS 标签来执行此操作吗?还是我需要创建我的自定义样式?

4

7 回答 7

66

我相信您正在寻找fieldsetHTML 标记,然后您可以使用 CSS 对其进行样式设置。例如,

    
    <fieldset style="border: 1px black solid">

      <legend style="border: 1px black solid;margin-left: 1em; padding: 0.2em 0.8em ">title</legend>

      Text within the box <br />
      Etc
    </fieldset>

于 2008-09-22T07:42:46.697 回答
14

如果您没有在表单中使用它,而是想在不可编辑的表单中使用它,您可以通过以下代码执行此操作 -

.title_box {
  border: #3c5a86 1px dotted;
}

.title_box #title {
  position: relative;
  top: -0.5em;
  margin-left: 1em;
  display: inline;
  background-color: white;
}

.title_box #content {}
<div class="title_box" id="bill_to">
  <div id="title">Bill To</div>
  <div id="content">
    Stuff goes here.<br> For example, a bill-to address
  </div>
</div>

于 2010-05-29T22:59:54.903 回答
5

来自http://www.pixy.cz/blogg/clanky/css-fieldsetandlabels.html

fieldset {
  border: 1px solid green
}

legend {
  padding: 0.2em 0.5em;
  border: 1px solid green;
  color: green;
  font-size: 90%;
  text-align: right;
}
<form>
  <fieldset>
    <legend>Subscription info</legend>
    <label for="name">Username:</label>
    <input type="text" name="name" id="name" />
    <br />
    <label for="mail">E-mail:</label>
    <input type="text" name="mail" id="mail" />
    <br />
    <label for="address">Address:</label>
    <input type="text" name="address" id="address" size="40" />
  </fieldset>
</form>

于 2008-09-22T07:44:14.353 回答
3

这会给你你想要的

<head>
    <title></title>
    <style type="text/css">
        legend {border:solid 1px;}
    </style>
</head>
<body>
    <fieldset>
        <legend>Test</legend>
        <br /><br />
    </fieldset>
</body>
于 2008-09-22T07:44:22.810 回答
2

据我所知(如果我错了,请纠正我!),没有。

我建议您使用内部带有负边距 h1 的 div。根据文档的语义结构,您还可以使用带有一个图例 (HTML) 的字段集 (HTML),其中默认情况下大致如下所示。

于 2008-09-22T07:41:01.430 回答
1

你可以试试这个。

<fieldset class="fldset-class">
    <legend class="legend-class">Your Personal Information</legend>

    <table>
        <tr>
            <td><label>Name</label></td>
            <td><input type='text' name='name'></td>
        </tr>
        <tr>
            <td><label>Address</label></td>
            <td><input type='text' name='Address'></td>
        </tr>
        <tr>
            <td><label>City</label></td>
            <td><input type='text' name='City'></td>
        </tr>
    </table>
</fieldset>

演示

于 2015-08-28T08:43:37.033 回答
1

我认为这个例子对某人也有用:

.fldset-class {
    border: 1px solid #0099dd;
    margin: 3pt;
    border-top: 15px solid #0099dd
}

.legend-class {
    color: #0099dd;
}
<fieldset class="fldset-class">
    <legend class="legend-class">Your Personal Information</legend>

    <table>
        <tr>
            <td><label>Name</label></td>
            <td><input type='text' name='name'></td>
        </tr>
        <tr>
            <td><label>Address</label></td>
            <td><input type='text' name='Address'></td>
        </tr>
        <tr>
            <td><label>City</label></td>
            <td><input type='text' name='City'></td>
        </tr>
    </table>
</fieldset>

于 2017-03-10T13:01:34.610 回答