【发布时间】:2011-07-28 17:32:54
【问题描述】:
我的借口提前,因为这似乎是一个关于 CSS 的基本理解的问题,也许还有 Javascript。
我想要做的是:想象一个包含 h3 和 p 的 div。在 div 上悬停时,我希望 h3 和 p 更改它们的字体粗细。到目前为止,我在这里使用此代码来更改悬停在 div 上的不透明度和边框,但我真的不知道如何引用 div 内的两个元素。真的很抱歉,但我需要有人用非常简单的语言向我解释。
例如,我认为 div 中的那些元素称为子元素,但我什至不确定...我真的是第一次使用所有 HTML/CSS/Java 的东西,并尝试在我前进的过程中弄清楚事情。到目前为止我发现的教程网站无法解决我的问题,因此这篇文章。
更多背景信息:我正在使用 jondesign (Jonathan Schemoul) () 的 "smoothgallery" script,并试图按照我的意愿使用它,但如果你不知道它实际上是如何工作的,那将非常困难.我在其中实现脚本的站点可以找到here。
这是改变悬停时 div 的 CSS 部分:
.jdGallery .gallerySelector .gallerySelectorInner div.hover{
border: 1px solid #89203B;
border-left: 0.8em solid #89203B;
background: url('../../images/teaserBox_bg.jpg') no-repeat;
background-size: 100% 100%;
filter:alpha(opacity=1);
-moz-opacity:1; /
-khtml-opacity: 1;
opacity: 1;
}
CSS 文件中的此条目会更改设置,例如那个div里面的h3,
.jdGallery .gallerySelector .gallerySelectorInner div.galleryButton h3{
margin: 0;
padding: 0;
font-size: 12px;
font-weight: normal;
}
您可能还想查看生成这些类的 .js 文件,它可以在 here 找到。
这可能是这里最重要的部分:
createGalleryButtons: function () {
var galleryButtonWidth =
((this.galleryElement.offsetWidth - 30) / 2) - 14;
this.gallerySet.each(function(galleryItem, index){
var button = new Element('div').addClass('galleryButton').injectInside(
this.gallerySelectorInner
).addEvents({
'mouseover': function(myself){
myself.button.addClass('hover');
}.pass(galleryItem, this),
'mouseout': function(myself){
myself.button.removeClass('hover');
}.pass(galleryItem, this),
'click': function(myself, number){
this.changeGallery.pass(number,this)();
}.pass([galleryItem, index], this)
}).setStyle('width', galleryButtonWidth);
galleryItem.button = button;
var thumbnail = "";
if (this.options.showCarousel)
thumbnail = galleryItem.elements[0].thumbnail;
else
thumbnail = galleryItem.elements[0].image;
new Element('div').addClass('preview').setStyle(
'backgroundImage',
"url('" + thumbnail + "')"
).injectInside(button);
new Element('h3').set('html', galleryItem.title).injectInside(button);
new Element('p').addClass('info').set('html', formatString(this.options.textGalleryInfo, galleryItem.elements.length)).injectInside(button);
}, this);
new Element('br').injectInside(this.gallerySelectorInner).setStyle('clear','both');
},
所以我的问题是,是否可以通过使用主 div 上的悬停功能来更改 h3 和 p 设置?
提前致谢!同样对于负面批评,我真的不知道我发布这个问题的方式是否做错了,我什至可以在这里提问。
【问题讨论】: