2016-06-25 2 views
0

мне интересно, как соединить два DIV элемента с линией, которая даже дистанцировался вид, как в этом сайте: Grok LearningКак подключить горизонтальную/вертикальную линию между двумя div?

JSFiddle link: https://jsfiddle.net/mcbvb8m2/ 

Как бы вы сделать это для горизонтальных и вертикальных див? Любая помощь будет оценена! Спасибо.

+0

Используйте программное обеспечение редактора изображений. Это все, что я могу сказать, если вы делите только изображение и никакого кода. – Harry

+0

Я не могу действительно ссылаться на страницу, как на моей учетной записи ... – nil338

ответ

0

Вы можете создать DIV с классом что-то вроде connector и стиль это посмотреть, как соединитель со следующими CSS:

.connector { 
    border: 6px solid #333; 
    border-right: 0; 
    border-top-left-radius: 8px; 
    border-bottom-left-radius: 8px; 
    height:50px; 
    width: 10px; 
} 

Вы можете изменить внешний вид этого, играя с толщиной пограничного , цвет и радиус границы. Это ухаживает за стилем.

Чтобы правильно установить его, вы можете использовать абсолютное или относительное позиционирование. В этом случае, чтобы использовать абсолютное позиционирование, примените position:absolute к классу connector. Чтобы разместить его, используйте такие свойства, как top, bottom, left и right. Абсолютное положение будет абсолютно позиционировать элемент относительно всей страницы, поэтому я рекомендую добавить position:relative в его родительский контейнер, чтобы он располагался относительно этого.

.container{ 
 
height:800px; 
 
width:100%; 
 
padding:50px; 
 
background:#eeeeee; 
 
    position:relative; 
 
    } 
 

 
.box-1{ 
 
    height:300px; 
 
    width:300px; 
 
    background:blue; 
 
    color:#fff; 
 
    margin-bottom:30px; 
 
} 
 

 
.box-2{ 
 
    height:300px; 
 
    width:300px; 
 
    background:red; 
 
    color:#fff; 
 
} 
 

 
.connector { 
 
    position:absolute; 
 
    top: 335px; 
 
    left: 35px; 
 
    border: 6px solid #333; 
 
    border-right: 0; 
 
    border-top-left-radius: 8px; 
 
    border-bottom-left-radius: 8px; 
 
    height:50px; 
 
    width: 10px; 
 
}
<div class="container"> 
 

 
    <div class="box-1"> 
 
    Box 1 
 
    </div> 
 
    
 
    <div class="box-2"> 
 
    Box 2 
 
    </div> 
 
    
 
    <div class="connector"></div> 
 

 
</div>

+0

Что произойдет, если я хочу иметь абзац или два между ними? Затем содержимое подталкивает ящик вниз, так что соединитель ничего не подключен – nil338

+0

Я имею в виду, что я могу установить для абзаца высоту линии 15 пикселей и размер шрифта 15 пикселей, а затем изменить высоту коннектора на 30 пикселей больше (потому что мой абзац был две линии, поэтому 15 * 2), но есть ли более простой метод? – nil338

+0

Вместо этого вы можете добавить позицию: по отношению к одному из ящиков и поместить разъем внутри коробки. Это будет абсолютно позиционировать разъем внутри этого. Затем вы можете поместить его на дно (или сверху) и до тех пор, пока промежуток между двумя ящиками не изменится, он должен оставаться подключенным к другому ящику. –

Смежные вопросы