2016-10-24 5 views
0

Я знаю, что границу можно использовать вместо тега горизонтальной линии (hr). Однако в этом случае я не хочу, чтобы линия занимала 100% ширина; ток div делает и так бы границу, если бы я поставить границу.Горизонтальная линия, которая занимает менее 100% ширины

Так что я хотел бы поставить горизонтальную линию (hr) в с 80% шириной, но это не отображается, а в частности, ширина нет 80%. Место, в которое я хочу вставить его, - это первая строка после класса bottom в моем коде.

Мое намерение состоит в том, чтобы поставить горизонтальную линию (hr) прямо над Cola (<p class="center1">Cola</p>) на этой странице. Кроме того, стиль не работает здесь для класса hr; пытаясь наложить на него ширину и цвет.

* { 
 
    margin: 0; 
 
} 
 
body { 
 
    background-color: green; 
 
} 
 
html, 
 
body { 
 
    height: 100%; 
 
} 
 
#subnav { 
 
    height: 10%; 
 
    text-align: center; 
 
} 
 
#subnav ul { 
 
    list-style-type: none; 
 
    margin: 0; 
 
    padding: 0; 
 
    overflow: hidden; 
 
    background-color: red; 
 
    text-align: center; 
 
    width: 100%; 
 
    font-weight: bold; 
 
} 
 
#subnav li { 
 
    display: inline-block; 
 
} 
 
#subnav li a { 
 
    display: block; 
 
    color: white; 
 
    text-align: center; 
 
    padding: 14px 16px; 
 
    text-decoration: none; 
 
} 
 
#subnav li a:hover { 
 
    color: yellow; 
 
} 
 
#subnav li a:active { 
 
    color: yellow; 
 
} 
 
#bigwrap { 
 
    height: 100%; 
 
} 
 
.container { 
 
    display: flex; 
 
    position: relative; 
 
    flex-flow: row wrap; 
 
    justify-content: center; 
 
    align-items: stretch; 
 
    min-height: 100vh; 
 
    width: 80%; 
 
    margin: 0 auto; 
 
    background-color: white; 
 
    font-size: 20px; 
 
} 
 
.top { 
 
    display: flex; 
 
    flex-flow: row wrap; 
 
    justify-content: flex-start; 
 
    align-items: center; 
 
} 
 
.bottom { 
 
    display: flex; 
 
    flex-flow: row wrap; 
 
    justify-content: space-around; 
 
    align-items: flex-start; 
 
} 
 
.bottom { 
 
    flex: 0 0 100%; 
 
    height: 50%; 
 
} 
 
hr.style1 { 
 
    border-top: 1px solid #8c8b8b; 
 
    width: 80%; 
 
} 
 
.top { 
 
    flex: 0 0 100%; 
 
    height: 50%; 
 
} 
 
.topa { 
 
    display: flex; 
 
    flex-flow: column wrap; 
 
    justify-content: center; 
 
    align-items: flex-start; 
 
    margin-left: 3%; 
 
    width: 45%; 
 
    height: 100%; 
 
} 
 
.topb { 
 
    display: flex; 
 
    flex-flow: row wrap; 
 
    justify-content: center; 
 
    align-content: center; 
 
    width: 50%; 
 
    height: 100%; 
 
} 
 
li { 
 
    list-style-type: none; 
 
    font-size: 18px; 
 
} 
 
.advisory { 
 
    background-color: white; 
 
    margin: auto; 
 
    width: 100%; 
 
} 
 
#advisory ul li { 
 
    margin-bottom: 2%; 
 
} 
 
.center { 
 
    text-align: center; 
 
} 
 
.center1 { 
 
    text-align: center; 
 
    color: green; 
 
    font-size: 28px; 
 
} 
 
.tpoint { 
 
    font-size: 24px; 
 
    color: orange; 
 
}
<div class="container"> 
 
    <div id="subnav"> 
 
    <ul> 
 
     <li> <a href="#">Sam </a> 
 
     </li> 
 
     <li> <a href="#">Sam </a> 
 
     </li> 
 
     <li> <a class="active" href="#">Corn </a> 
 
     </li> 
 
     <li> <a href="#">Sam </a> 
 
     </li> 
 
     <li> <a href="#">Sam </a> 
 
     </li> 
 
     <li> <a href="#">Sam </a> 
 
     </li> 
 
     <li> <a href="#">Sam </a> 
 
     </li> 
 
    </ul> 
 
    </div> 
 
    <div class="top"> 
 
    <div class="topa"> 
 
     <img src="ham.jpg" width="209" height="205" alt="Picture of kid" /> 
 
     <img src="bacon.jpg" width="209" height="205" alt="Picture of kid\" /> 
 
    </div> 
 
    <div class="topb"> 
 
     <h2> Sams </h2> 
 
     <p>Sample sentence this Sample sentence this Sample sentence this Sample sentence this Sample sentence this Sample sentence this Sample sentence this Sample sentence this Sample sentence this Sample sentence this Sample sentence this Sample sentence 
 
     this Sample sentence this Sample sentence this Sample sentence this Sample sentence this Sample sentence this Sample sentence this Sample sentence this Sample sentence this Sample sentence this Sample sentence this Sample sentence this Sample 
 
     sentence this Sample sentence this Sample sentence this Sample sentence this</p> 
 
    </div> 
 
    </div> 
 
    <div class="bottom"> 
 
    <div class="sam"> 
 
     <hr class="style1"> 
 
     <p class="center1">Cola</p> 
 
     <p class="center tpoint">Sample</p> 
 
     <ul> 
 
     <li>Sample 
 
      <ul> 
 
      <li>Sample</li> 
 
      <li>rsam</li> 
 
      </ul> 
 
     </li> 
 
     <li>san 
 
      <ul> 
 
      <li>sam</li> 
 
      <li>sam</li> 
 
      </ul> 
 
     </li> 
 
     <li>sam 
 
      <ul> 
 
      <li>sam</li> 
 
      <li>sam</li> 
 
      </ul> 
 
     </li> 
 
     <li>sam 
 
      <ul> 
 
      <li>sam</li> 
 
      <li>sam</li> 
 
      </ul> 
 
     </li> 
 
     <li>sam 
 
      <ul> 
 
      <li>sam</li> 
 
      <li>sam</li> 
 
      </ul> 
 
     </li> 
 
     </ul> 
 
     <p class="center tpoint">The sam</p> 
 
     <ul> 
 
     <li>sam 
 
      <ul> 
 
      <li>sam</li> 
 
      </ul> 
 
     </li> 
 
     <li>sam</li> 
 
     <li>sam</li> 
 
     <li>sam</li> 
 
     <li>sam</li> 
 
     <li>sam</li> 
 
     <li>sam</li> 
 
     <li>sam</li> 
 
     </ul> 
 
     <p class="center tpoint">Eggs</p> 
 
     <ul> 
 
     <li>sam 
 
      <ul> 
 
      <li>san</li> 
 
      </ul> 
 

 
     </li> 
 
     <li>Eri 
 
      <ul> 
 
      <li>Sam</li> 
 
      </ul> 
 
     </li> 
 
     </ul> 
 
    </div> 
 
    </div> 
 
</div>

+1

Родитель вашей строки - это div 'sam', ширина которого составляет 134px. Установив ширину 'hr' до 80%, вы говорите, что она составляет 80% от 134 пикселей. – Santi

ответ

1

Вы можете изменить ваш CSS следующим образом:

Добавить ширина 100% к классу sam:

.sam { 
    width: 100%; 
} 

Добавить центрирования к классу style1:

.style1 { 
    width: 80%; 
    margin-left: auto; 
    margin-right: auto; 
} 
-1

Вы ошибку в разметке

Если вы хотите horizantal ширина линии 100%

изменение <hr class="style1"> к <hr class="style1"/>

Это фиксирует его

+2

Прямая цитата из OP: «...в этом случае ** Я не хочу, чтобы линия занимала 100% ширину. ** « – Santi

+0

Кроме того, при использовании чего-либо, кроме XHTML DOCTYPE, вам не нужно закрывать самозакрывающиеся теги. –

1

Ваш hr находится внутри контейнера с меньшей шириной (div .sam), поэтому ширина составляет 80% от этого контейнера. Просто переместите его в HTML-коде, над .bottom DIV:

* { 
 
margin: 0; 
 
} 
 
body { 
 
\t background-color: green; 
 
} 
 
html, 
 
body { 
 
\t height: 100%; 
 
} 
 

 
#subnav { 
 
\t height: 10%; 
 
\t text-align: center; 
 
} 
 
#subnav ul { 
 
\t list-style-type: none; 
 
\t margin: 0; 
 
\t padding: 0; 
 
\t overflow: hidden; 
 
\t background-color: red; 
 
\t text-align: center; 
 
\t width: 100%; 
 
\t font-weight: bold; 
 
} 
 
#subnav li { 
 
\t display: inline-block; 
 
} 
 
#subnav li a { 
 
\t display: block; 
 
\t color: white; 
 
\t text-align: center; 
 
\t padding: 14px 16px; 
 
\t text-decoration: none; 
 
} 
 
#subnav li a:hover { 
 
\t color: yellow; 
 
} 
 
#subnav li a:active { 
 
\t color: yellow; 
 
} 
 
#bigwrap { 
 
\t height: 100%; 
 
} 
 
.container { 
 
    display: flex; 
 
    position: relative; 
 
    flex-flow: row wrap; 
 
    justify-content: center; 
 
    align-items: stretch; 
 
    min-height: 100vh; 
 
    width: 80%; \t 
 
\t margin: 0 auto; 
 
\t background-color: white; 
 
\t font-size: 20px; 
 
} 
 

 
.top { 
 
\t display: flex; 
 
\t flex-flow: row wrap; 
 
\t justify-content: flex-start; 
 
\t align-items: center; \t 
 
} 
 
.bottom { 
 
\t display: flex; 
 
\t flex-flow: row wrap; 
 
\t justify-content: space-around; 
 
\t align-items: flex-start; 
 
} 
 
.bottom { 
 
\t flex: 0 0 100%; 
 
\t height: 50%; 
 
} 
 
hr.style1{ 
 
\t border-top: 1px solid #8c8b8b; 
 
\t width: 80%; 
 
} 
 
.top { 
 
\t flex: 0 0 100%; 
 
\t height: 50%; \t 
 
} 
 
.topa { 
 
\t display: flex; 
 
\t flex-flow: column wrap; 
 
\t justify-content: center; 
 
\t align-items: flex-start; 
 
\t margin-left: 3%; 
 
\t width: 45%; 
 
\t height: 100%; 
 
} 
 
.topb { 
 
\t display: flex; 
 
\t flex-flow: row wrap; 
 
\t justify-content: center; 
 
\t align-content: center; 
 
\t width: 50%; 
 
\t height: 100%; 
 
} 
 
\t 
 
li { 
 
list-style-type: none; 
 
font-size: 18px; 
 
} 
 
.advisory { 
 
\t background-color: white; 
 
\t margin: auto; 
 
\t width: 100%; \t 
 
} 
 
#advisory ul li { 
 
\t margin-bottom: 2%; 
 
} 
 
.center { 
 
\t text-align: center; 
 
} 
 
.center1 { 
 
\t text-align: center; 
 
\t color: green; 
 
\t font-size: 28px; 
 
} 
 
.tpoint { 
 
\t font-size: 24px; 
 
\t color: orange; 
 
}
<div class="container"> 
 
    \t <div id="subnav"> 
 
      \t <ul> 
 
    \t \t \t <li> <a href="#">Sam </a></li> 
 
     \t \t <li> <a href="#">Sam </a></li> 
 
    \t \t \t <li> <a class="active" href="#">Corn </a></li> 
 
    \t \t \t <li> <a href="#">Sam </a></li> 
 
      \t <li> <a href="#">Sam </a></li> 
 
       <li> <a href="#">Sam </a></li> 
 
       <li> <a href="#">Sam </a></li> 
 
    \t \t </ul> 
 
     </div> 
 
    \t <div class="top"> 
 
     \t <div class="topa"> 
 
    \t  \t \t <img src="ham.jpg" width="209" height="205" alt="Picture of kid" /> 
 
    \t \t \t \t <img src="bacon.jpg" width="209" height="205" alt="Picture of kid\" /> 
 
      </div>   
 
     \t <div class="topb"> 
 
      \t <h2> Sams </h2> 
 
      \t <p>Sample sentence this Sample sentence this Sample sentence this Sample sentence this 
 
       Sample sentence this Sample sentence this Sample sentence this Sample sentence this 
 
       Sample sentence this Sample sentence this Sample sentence this Sample sentence this 
 
       Sample sentence this Sample sentence this Sample sentence this Sample sentence this 
 
       Sample sentence this Sample sentence this Sample sentence this Sample sentence this 
 
       Sample sentence this Sample sentence this Sample sentence this Sample sentence this 
 
       Sample sentence this Sample sentence this Sample sentence this </p> 
 
     \t </div> 
 
     </div> 
 
      \t <hr class="style1"> 
 
     <div class="bottom"> 
 
     \t <div class="sam"> 
 
      \t \t <p class="center1"> Cola </p> 
 
      \t \t <p class="center tpoint"> Sample </p> 
 
       <ul> 
 
       \t <li> Sample 
 
        \t <ul> 
 
         \t <li> Sample </li> 
 
          <li> rsam </li>      
 
         </ul> 
 
        </li> 
 
        <li> san 
 
        \t <ul> 
 
         \t <li> sam </li> 
 
          <li> sam </li> 
 
         </ul> 
 
        </li> 
 
        <li> sam 
 
        \t <ul> 
 
         \t <li> sam </li> 
 
          <li> sam </li> 
 
         </ul> 
 
        </li> 
 
        <li> sam 
 
        \t <ul> 
 
         \t <li> sam </li> 
 
          <li> sam </li> 
 
         </ul> 
 
        </li> 
 
        <li> sam 
 
        \t <ul> 
 
         \t <li> sam </li> 
 
          <li> sam </li> 
 
         </ul> 
 
        </li> 
 
       </ul> 
 
      <p class="center tpoint"> The sam</p> 
 
       <ul> 
 
       \t <li> sam 
 
        \t <ul> 
 
         \t <li> sam </li> 
 
         </ul> 
 
        </li> 
 
        <li> sam </li> 
 
        <li> sam </li> 
 
        <li> sam </li> 
 
        <li> sam </li> 
 
        <li> sam </li> 
 
        <li> sam </li> 
 
        <li> sam </li> \t 
 
       </ul> 
 
       <p class="center tpoint" > Eggs </p> 
 
       <ul> 
 
       \t <li> sam 
 
        \t <ul> 
 
         \t <li> san </li> 
 
         </ul> 
 
        
 
        </li> 
 
        <li> Eri 
 
        \t <ul> 
 
         \t <li> Sam </li> 
 
         </ul> 
 
        </li> 
 
       </ul> 
 
      </div> 
 
     </div> 
 
    \t </div>

+0

О, спасибо. У меня есть вопрос, поэтому, прежде чем я сделал это, я случайно положил его прямо перед «sam», но после «bottom», и это полностью через все в wack. Хотя я знаю, что это неправильно, почему это так? я исправил его, используя вашу версию, но я просто хочу знать, почему эта ошибка так и есть. -Спасибо –

+0

Как я писал: 'hr' был внутри' .sam' div, поэтому он был центрирован внутри этого div, и это было всего лишь 80% ширины DIV. – Johannes

1

hr внутри .sam ДИВ, который не получает полную ширину. Вот почему вы видите hr с небольшим width (но он занимает 80% ширины).

.sam{ 
    width:100% 
} 

Это исправит проблему.

0

попробуйте it

<hr align="left" width="50%"> 
Смежные вопросы