ما هي علامة CSS التي تنشئ مربعًا مثل هذا بعنوان؟

StackOverflow https://stackoverflow.com/questions/113640

  •  02-07-2019
  •  | 
  •  

سؤال

أريد إنشاء مربع مثل هذا بعنوان:

CSS box with title

هل يمكن لأي أحد أن يخبرني إذا كانت هناك علامة CSS افتراضية للقيام بذلك؟أو هل أحتاج إلى إنشاء أسلوبي المخصص؟

هل كانت مفيدة؟

المحلول

أعتقد أنك تبحث عن fieldset علامة HTML، والتي يمكنك بعد ذلك تصميمها باستخدام 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>

نصائح أخرى

إذا كنت لا تستخدمه في النماذج، وبدلاً من ذلك تريد استخدامه في نموذج غير قابل للتحرير، يمكنك القيام بذلك عبر الكود التالي -

<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>

وفي ملف CSS

.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 {
}

من http://www.pixy.cz/blogg/clanky/css-fieldsetandlabels.html

<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>


<style type="text/css">
fieldset { border:1px solid green }

legend {
  padding: 0.2em 0.5em;
  border:1px solid green;
  color:green;
  font-size:90%;
  text-align:right;
  }
</style>

هذا سوف يعطيك ما تريد

<head>
    <title></title>
    <style type="text/css">
        legend {border:solid 1px;}
    </style>
</head>
<body>
    <fieldset>
        <legend>Test</legend>
        <br /><br />
    </fieldset>
</body>

بقدر ما أعرف (صححني إذا كنت مخطئا!)، لا يوجد.

أنصحك باستخدام div مع هامش سلبي-h1 بالداخل.اعتمادًا على البنية الدلالية لمستندك، يمكنك أيضًا استخدام مجموعة حقول (HTML) مع وسيلة إيضاح واحدة (HTML) والتي تبدو بداخلها هكذا تقريبًا بشكل افتراضي.

أعتقد أن هذا المثال يمكن أن يكون مفيدًا أيضًا لشخص ما:

.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>

يمكنك تجربة ذلك.

<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>

تجريبي

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top