CSS3 父子元素透明问题
在前端开发中,我们经常使用CSS3 的opacity属性来设置元素的透明度。但是opacity属性在父子元素间设置存在问题。
假如我们给父元素设置 opacity:0.5,子元素不设置opacity,子元素就会受到父元素opacity的影响,也会有0.5的透明度。
即使设置子元素opacity:1,子元素的opacity:1 也是在父元素的opacity:0.5的基础上设置的,因此子元素的opacity还是0.5。
所以给父子间某一元素设置透明度时,我们可以使用这种方法:
为父元素设置background: rgba(0,0,0,0.5),去掉opacity属性,或者设置为unset
2020-08-11
前端
ExtJS 组件重载
ExtJs 日期选择没有清除按钮,增加一个清除按钮
/**
* 日期选择增加清除按钮
*/
Ext.override(Ext.picker.Date,{
onRender : function(container, position) {
var me = this;
me.clearBtn = new Ext.button.Button({
ownerCt: me,
ownerLayout: me.getComponentLayout(),
text: '清除',
tooltip: '清除日期',
tooltipType: 'title',
handler: me.selectClear,
scope: me
});
this.clearBtn.owner
2020-08-11
前端
JAVASCRIPT 可变参数
在一个函数体内,标识符arguments具有特殊含义.Arguments对象是一个类似数组的对象eg:验证函数参数的正确数目
function f(x, y, z) {
if (arguments.length != 3) {
throw new Error("function with " + arguments.length + "arguments, but it expects 3 arguments.")
// now do the actual function
}
}
eg:简单的max函数能接受任意数目的实际参数
function max() {
var m = Number.NEGATIVE_INFINITY;
for (var i = 0; i < arguments.length; i++) {
if (arguments[i] > m) m =
2020-08-11
前端
javascript
CSS样式覆盖规则
大家都知道CSS的全称叫做“层叠样式表”,但估计很多人都不知道“层叠”二字的含义。其实,“层叠”指的就是样式的覆盖,当一个元素被运用上多种样式,并且出现重名的样式属性时,浏览器必须从中选择一个属性值,这个过程就叫“层叠”。样式覆盖(这种叫法更大众化些)遵循一定的规则,之前我对这个规则一直似懂非懂的,直到这几天看了”CSS: The Missing Manual”,才豁然开朗。下面是我的一些学习笔记。
首先需要明确的是,很多情况都会导致一个元素被运用上多种样式,样式覆盖的规则也需要根据不同的情况来定,具体规则如下。
### 规则一:由于继承而发生样式冲突时,最近祖先获胜。
CSS的继承机制使得元素可以从包含它的祖先元素中继承样式,考虑下面这种情况:
```
1
2
3 rule 1
4
5 body {color:black;}
6 p {color:blue;}
7
8
9
10 welcome to gaodayue的网络日志
11
12
```
strong分别从body和p中继承
2020-08-11
前端