2016-11-30 3 views
2

У меня есть два разных контейнера div в моем одном файле jsp, для которого у меня нет доступа к редактированию.Обновление свойства css дочернего элемента в определенном div

--Div 1

<div class="mar-t40 alignRight"> 
    <img id="ts_fclogoBox" alt="Logo" src="{{imgPath}}/content/dam/Logo.png" /> 
</div> 

--Div 2

<div class="alignRight"> 
    <img id="ts_fclogoBox" alt="Logo" src="{{imgPath}}/content/dam/Logo.png" /> 
</div> 

Теперь мне нужно применить ниже CSS только ts_fclogoBox настоящее внутри DIV 2. Можно ли добиться этого без редактирования файл jsp?

#ts_fclogoBox { 
    margin-left: -15px; 
} 

Я чувствую, что это невозможно, но просто хотелось узнать, есть ли какой-то способ.

+0

вы не можете использовать тот же идентификатор для двух различных элементов ID являются уникальным, если вы используете только те же идентификаторы, что и этот идентификатор будет затронут, который будет найден по умолчанию DOM –

+1

Как уже отмечалось в предыдущем комментарии, вы не должны использовать тот же ID для двух элементов на одной странице. Я также думаю, что ответы выглядели слишком буквально и предполагали, что второй «div» станет вторым ребенком, что может не всегда быть в этом. Если это не всегда второй ребенок, то метод, используемый в [этой демонстрации] (https://jsfiddle.net/e9bzj4np/), поможет. Если это соответствует вашей потребности, я отправлю вам ответ. – Harry

+0

@Harry: отличный ответ, пожалуйста, отправьте его как ответ. Я помечаю это. –

ответ

1

Использовать класс и идентификаторы, чтобы избежать путаницы с другими дивы

div.alignRight:nth-child(2) img#ts_fclogoBox{ 
    margin-left:-15px; 
} 
1

вы можете достигнуть того, используя селектор ребенка в CSS3

div:nth-child(2) img { 
    margin-left: -15px; 
} 

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

  • Нет связанных вопросов^_^