2013-06-26 2 views
3

Если у меня есть 2 элементов бок о бок в DOM, как это:CSS как указать элемент рядом с моим текущим элементом?

a.button 
div.container 

Я хочу предназначаться a.buttonеслиdiv.container имеет класс div.container.fullscreen

Я думал что-то вроде этого:

div.container.fullscreen + a.button { display:none }, но не работает.

Любые предложения?

+0

Не могли бы вы выписать HTML, чтобы мы могли получить более четкое представление о том, что вы работаете? – kingdamian42

+2

Попробуйте ckeck этот ответ: http://stackoverflow.com/questions/1817792/css-previous-sibling-selector – Lucas

+0

кнопка используется, чтобы получить Див полный экран? если да, то может быть решение. Ваша HTML-разметка plz :) –

ответ

6

+ не будет работать, так как это next sibling selector.

Ваш селектор div.container.fullscreen + a.button нацелится на a, если это был следующий непосредственный брат из div, например,

div.container.fullscreen 
a.button // this is now targeted 

div.container.fullscreen ~ a.button не будет работать, как и выберет все брат и сестра после, а не до.

a.button // this isn't targeted. 
div.container.fullscreen 
a.button // this is now targeted 
a.button // so is this 

К сожалению, для выбора того, что вы хотите, используя чистый CSS, нет прежнего селектора для сиблинга.

0

Синтаксис E + F соответствует только если E предшествует F. Если они упорядочены, как вы только что описали, я не думаю, что вы можете создать a с чистым CSS.

Вы можете просто изменить HTML-код для размещения класса fullscreen в родительском контейнере как container, так и button. Таким образом, вы можете использовать следующие декларации к стилю:

.fullscreen > div.container { 
    /* 
    any fullscreen modifications to be done, what used to be in div.fullscreen 
    */ 
} 

.fullscreen > a.button { 
    display: none 
} 
0

отсутствует ваш настоящий html. <a> имеет атрибут href? Он нацелен на <div>?

Button не нужно скрывать, если он скрыт под div после полного расширения, он скрыт самим div.

Элементы формы могут помочь увидеть идею в действии: http://codepen.io/gcyrillus/pen/otFim