如何在不使用<fieldset>标签的情况下实现类似<fieldset>的效果?


由于识别可比较数据字段的简易性,表单被用于汇总数据,以便所有用户和客户都能更容易地理解。此外,通过单独了解每个分组,而不是试图一次性掌握整个表单,用户能够更好地关注更小、更清晰定义的分组。

默认情况下,相关的表单数据字段使用<fieldset>和<legend>元素组合在一起。在我们深入文章之前,让我们快速浏览一下HTML中的<fieldset>标签。

HTML <fieldset>标签

HTML <fieldset>标签用于分组相关的表单元素。通过使用fieldset标签和legend标签,您可以使您的表单更容易被用户理解。

语法

以下是HTML <fieldset>标签的语法

<fieldset>.....</fieldset>

现在让我们深入文章,学习如何在不使用<fieldset>标签的情况下创建类似<fieldset>的效果。

<fieldset>标签的替代方案

为了产生类似的分组效果,<div>元素可以与必要的CSS样式结合使用,作为<fieldset>标签的HTML替代方案。虽然<fieldset>是专门为分组表单元素而创建的语义元素,但使用带有自定义样式的<div>元素可能会为您提供更多设计和布局选项。

示例

让我们看下面的例子,我们将使用<div>元素和CSS创建一个类似fieldset的效果。

<!DOCTYPE html>
<html>
<head>
   <style>
      .tutorial-field {
         border: 1px solid #DE3163;
         border-top: none;
         margin: 20px 1px;
         padding: 6px;
      }
      .tutorial-field h1 {
         font: 19px verdana;
         margin: -15px -5px 0;
      }
      .tutorial-field h1 span {
         float: left;
      }
      .tutorial-field h1:before {
         border-top: 1px solid #DE3163;
         content: ' ';
         float: left;
         margin: 9px 3px 0 -1px;
         width: 16px;
      }
      .tutorial-field h1:after {
         border-top: 1px solid #DE3163;
         content: ' ';
         display: block;
         height: 24px;
         left: 3px;
         margin: 0 1px 0 0;
         overflow: hidden;
         position: relative;
         top: 9px;
      }
   </style>
</head>
<body style="background-color:#D5F5E3 ">
   <div class="tutorial-field">
      <h1>
         <span> Basic Details : </span>
      </h1>
      <div>
         <label for="name">Surname:</label>
         <br>
         <input type="text" name="name">
      </div>
      <br>
      <div>
         <label for="name"> Name: </label>
         <br>
         <input type="text" name="name">
      </div>
      <br>
      <div>
         <label for="gender">Gender:</label>
         <br>
         <input type="radio" name="Gender" value="male">Male <input type="radio" name="Gender" value="female">Female
      </div>
   </div>
</body>
</html>

当我们运行上面的代码时,它将生成一个输出,其中包含在网页上显示的类似fieldset的效果,这是通过使用<div>和CSS实现的。

更新于:2024年1月19日

324 次浏览

启动你的职业生涯

完成课程获得认证

开始学习
广告