标签 代码段 下的文章

CSS 又一居中代码 绝对定位居中技术

今晚学习了一下定位知识,恰好hostker有个小网页用到了,就想自己试试看,由于不是居中的,存在一定偏差,所以纠结了好久(当然background-image还是居中的)。我把background用Image引入,而不是定义为background(不然position实在更难控制。。。)

下面一段代码就能水平和垂直都居中了。

margin: auto;  
position: absolute;  
top: 0;
left: 0;
bottom: 0;
right: 0;

- 阅读剩余部分 -

10个不可忽视的CSS代码片段

1、垂直对齐

在使用CSS的时候,你可能会出现疑问,我如何在容器中将文本或元素垂直对齐。现在使用CSS3 Transforms,我们可以更有效解决这问题,如下:

.verticalcenter{
position: relative;
top: 50%;
-webkit-transform: translateY(-50%);
-o-transform: translateY(-50%);
transform: translateY(-50%);
}

使用这个技术,文本、段落等都可以垂直对齐,CSS3 Transform 支持Chrome 4, Opera 10, Safari 3, Firefox 3, Internet Explorer 9。

- 阅读剩余部分 -

jQuery HTML5播放器整合多段播放思路

最近由于工作需要在研究HTML5的播放器,HTML5其实自带的已经很全了,但是当我们需要把切割的视频整合播放的时候就遇到了麻烦,这里我想到了一个思路,正好发现网上也提到了很多这种思路:

首先多播放器窗口,除了一个以外display:none,一般需求中两个就足够了。然后监听是否结束(关于监听,稍后再发一篇讲讲Javascript的监听问题),监听本P播放结束之后将下一个的链接赋值到隐藏的那个,交替display,进度条当然需要重做,这里就需要统计总时长了。

关于HTML5 Video的事件可以参考:http://www.w3school.com.cn/tags/html_ref_audio_video_dom.asp

当然理论上很好想,实际在用的时候还是遇到了一些问题:
最近由于工作需要在研究HTML5的播放器,HTML5其实自带的已经很全了,但是当我们需要把切割的视频整合播放的时候就遇到了麻烦,这里我想到了一个思路,正好发现网上也提到了很多这种思路:

首先多播放器窗口,除了一个以外display:none,一般需求中两个就足够了。然后监听是否结束(关于监听,稍后再发一篇讲讲Javascript的监听问题),监听本P播放结束之后将下一个的链接赋值到隐藏的那个,交替display,进度条当然需要重做,这里就需要统计总时长了。

关于HTML5 Video的事件可以参考:http://www.w3school.com.cn/tags/html_ref_audio_video_dom.asp

当然理论上很好想,实际在用的时候还是遇到了一些问题:

- 阅读剩余部分 -

C (bu)科学的复数求解(两数加减乘除)

这次真的是记录一下思考过程了,反正是个很坎坷复杂的经历。
github地址:https://github.com/csvwolf/Sky-C-Study/tree/master/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84
老师给了我们一个结构体的框架,不得不说C的结构体和C++的还是有差别的:http://www.cppblog.com/percyph/archive/2009/03/06/75742.html

由此,我们这样定义一个结构体之后:

typedef struct
{
    float rpart;
    float ipart;
} complex;

- 阅读剩余部分 -

C 清空键盘缓冲区若干方法

写这次的数据结构的作业的时候对于缓冲区问题深表蛋疼,getchar()深表拙计,于是搜了一下……

以下文字来自:http://www.ludou.org/c-clear-buffer-area.html

清空键盘缓冲区很多种方法,如用fflush(stdin); rewind(stdin);等,但是在linux这些都不起作用,还得我今天试了半天都没成功,上网搜了一下发现setbuf(stdin, NULL);就能直接清空键盘缓冲区了。

以下几个实例:

Sample one

#include <stdio.h>

int main()
{
    char ch1;
    char ch2;

    ch1 = getchar();
    ch2 = getchar();
    printf("%d  %d", ch1, ch2);
    return 0;
}

- 阅读剩余部分 -

Javascript 做个跳转界面

不算是成品,只是提供一个思路,学了location.repalce()发现是分分钟的事情。

演示

很简单的使用超时调用就搞定了。

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>You won't be able to get back here</title>
</head>
<body>
    <p>Enjoy this page for a second, because you won't be coming back here.</p>
    <script type="text/javascript">
        setTimeout(function() {
            location.replace("http://codesky.me");
        }, 1000);
    </script>
</body>
</html>

JavaScript BOM初体验-window.open

看了半天,终于到了我觉得实战的部分了,首先是window.open,说白了就是弹出窗口。
基础的来讲:

// 等同于 <a href="http://codesky.me" target="topFrame"></a>
window.open("http://codesky.me", "topFrame");

等价的时候用没什么前途,所以这里还有别的用法,topFrame,也就是第二个参数,可以传入_self,_parent,top以及_blank,而第二个参数并不是已存在的窗口和框架时,会去读取第三个参数来决定,第三个参数中似乎一些都是不怎么好用的,主要是top,width,left,height位置。

- 阅读剩余部分 -

Javascript indexOf遍历查找所有子字符串出现的位置

好久没有更新了,六月份因为考试的缘故更是直接跳过了,前面浅浅的读了一下也不知道记些什么好,鉴于这个看着不错的样子就来mark一下。

indexOf()方法,可以从一个字符串中搜索给定的子字符串,和他相反的是lastIndexOf(),这个功能还算常见,正好码这段想到其他问题了,比如:

var stringValue = "Lorem ipsum dolor sit amet, consectetur adipisicing elit";
var positions = new Array();
var pos = stringValue.lastIndexOf("orem");

这段代码的运行结果如何呢,结果是1,而换成indexOf()结果也是1,然后我尝试了不同的测试,似乎所谓的返回子字符串的位置是从打头的字符位置而定的(如果没找到则返回-1)。

- 阅读剩余部分 -