zhixin's profileMYspace.comPhotosBlogLists Tools Help

zhixin xu

Occupation
Location
Interests
....喜欢网络,没有喧闹,没有偏见,其乐也融融。新的msn space 就当是个人的homepage,和大家一起分享生活和理想.....

MYspace.com

June 16

DataList 横向排版及CSS 设置

下午搞了一个dataList横排表格,留个脚印吧。
 
<table width="100%" border="1" style="border-collapse: collapse;" style="border: 1px solid block"
            bordercolor="#111111" cellpadding="0" cellspacing="0">
            <tr>
                <td>
                    开始时间
                </td>
                <td rowspan="3">
                    <asp:DataList ID="DataList1" runat="server" RepeatColumns="3" RepeatDirection="Horizontal">
                        <ItemTemplate>
                            <table width="100%" border="1" frame="rhs" style="border-collapse: collapse; border-bottom: 1px solid block"
                                bordercolor="#111111">
                                <tr>
                                    <td style="background-color: White">
                                        <%# DataBinder.Eval(Container.DataItem, "CreateDate","{0:yyyy-MM-dd}")%>
                                    </td>
                                </tr>
                                <tr>
                                    <td style="background-color: White">
                                        <%# DataBinder.Eval(Container.DataItem, "NewsTitle")%>
                                    </td>
                                </tr>
                                <tr>
                                    <td style="background-color: White">
                                        <%# DataBinder.Eval(Container.DataItem, "ExpireDate","{0:yyyy-MM-dd}")%>
                                    </td>
                                </tr>
                            </table>
                        </ItemTemplate>
                    </asp:DataList>
                </td>
            </tr>
            <tr>
                <td class="style1">
                    标题
                </td>
            </tr>
            <tr>
                <td class="style1">
                    过期时间
                </td>
            </tr>
        </table>
 
下面一个是repeater的
 
<asp:Repeater   runat="server"   id="repeater1"   OnItemDataBound="Repeater1_ItemDataBound">  
  <HeaderTemplate>  
  <table   width="100%"   border=0   align="center"><tr>  
  </HeaderTemplate>  
  <ItemTemplate>  
  <td><%#DataBinder.Eval(Container.DataItem,"字段名")%></td>  
  </ItemTemplate>  
  <FooterTemplate>  
  </tr></table>  
  </FooterTemplate>  
  </asp:Repeater>  
   
  ---------------------  
  //定义全局变量i  
  int   i=0;  
  void   Repeater1_ItemDataBound(object   src,RepeaterItemEventArgs   e){  
  if(i%3==0){  
  e.Item.Controls.Add(new   LiteralControl("</tr><tr>"));  
  }  
  i++;  
  }  
 
March 19

JS的学习

昨日看到网文《悟透javascript》作者不仅有着非凡的程序功力,知识也十分渊博。 他山之石,可以攻玉。特此留下纪念,以便今后可查询于此。
 
function Person(name)   //带参数的构造函数
     {
         this.name = name;   //将参数值赋给给this对象的属性
         this.SayHello = function() {alert("Hello, I'm " + this.name);};   //给this对象定义一个SayHello方法。
     };

     function Employee(name, salary)     //子构造函数
     {
         Person.call(this, name);        //将this传给父构造函数
        this.salary = salary;       //设置一个this的salary属性
        this.ShowMeTheMoney = function() {alert(this.name + " $" + this.salary);};  //添加ShowMeTheMoney方法。
    };
   
    var BillGates = new Person("Bill Gates");   //用Person构造函数创建BillGates对象
    var SteveJobs = new Employee("Steve Jobs", 1234);   //用Empolyee构造函数创建SteveJobs对象

    BillGates.SayHello();   //显示:I'm Bill Gates
    SteveJobs.SayHello();   //显示:I'm Steve Jobs
    SteveJobs.ShowMeTheMoney();   //显示:Steve Jobs $1234

    alert(BillGates.constructor == Person);  //显示:true
    alert(SteveJobs.constructor == Employee);  //显示:true
   
    alert(BillGates.SayHello == SteveJobs.SayHello); //显示:false
    这段代码表明,函数不但可以当作构造函数,而且还可以带参数,还可以为对象添加成员和方法。其中的第9行,Employee构造函数又将自己接收的 this作为参数调用Person构造函数,这就是相当于调用基类的构造函数。第21、22行还表明这样一个意思:BillGates是由Person构造的,而SteveJobs是由Employee构造的。对象内置的constructor属性还指明了构造对象所用的具体函数
 
 
February 18

男人30岁前必须明白10件事

(Msn男人频道摘来的片段,非常适合自己,就把它记录下来。)
 
1、要知道,眼睛一闭一睁,一天就过去了。
时间不停流,总是在不停的前行,所以,要懂得只争朝夕,真正从内心里明白眼睛一闭一睁的概念,好好的度过每一天,而不是碌碌无为的不知道为谁而活,也不知道自己想要干些什么。
 
2、要明白,最爱的人是谁,要好好的去爱。
一定要明白,谁是你最爱的人,谁是最爱你的人,要好好的理解爱,用心的去爱,让爱充满阳光,同样温暖你生活的每个瞬间,只有这样,你的幸福指数才会最高,最令人羡慕。
 
3、要知道,最重要的责任,要用心去生活。
要记得,人生最重要的不是挣钱,而是有责任,对身边的人要负责,对生活要负责,对工作要负责,责任意识让自己学着慢慢成熟,同样也可以改变一个人的理想和信念,让大家得到肯定。
 
4、要明白,不断的学习,让自己逐步提高。
活到老,学到老。总理说的没有错。人生苦短,但一定不要忘记学习,毕竟,在学习中不断的提高自己,才可以获得更大的成功。相信这一点,比什么都重要。
 
5、要知道,思考非常重要,学会改变自己。
要不断的去思考,发现问题及时解决问题,并在发现问题和解决问题的时候学会改变自己,让自己去适应社会和团队的发展,当然,适应并不是放弃自己主观能动性。
 
6、要明白,钱不是第一位,爱才是第一位。
有钱可以提高生活质量,但并不是提高爱的质量,爱是第一位的,钱不是第一位,只有充满爱的生活,钱才更有价值,没有了爱,有再多的钱一点用都没有,全是自私和永不满足的欲望而已。
 
7、要知道,逆境不可怕,可怕的是失去信心。
顺境中发挥出自己应有的能力当然重要,但更重要的是在逆境中学会坚强的面对现实,只有这样,才会更有信心的去坚持自己的理想,相信自己,什么都不可怕。
 
8、要明白,有份事业,为自己的所爱而奋斗。
要知道自己最需要什么,什么最适合自己,也许,在很多次艰难的决择中,会发现自己最需要的是什么,朝着自己的目标去奋斗,相信会有成功的那一天
 
9、要明白,健康是第一位,要学会多运动。
多多的运动,保持一个好的身体状态,身体是革命的本钱,只有保证在健康的前提下,一切理想才可以去谈,所以不要总是自以为是,科学合理的运动,健康第一位。
 
10、要知道,眼睛一闭不睁,一辈子就过去了。
理解这句话的真正用意,就是不要太去计较得与失,要勇敢的面对现实,要学会理解和宽容,要学会放弃,要懂得舍得的意思,活的开开心心的最重要,有个好的心态,一辈子才活的有意义。
February 12

css的优先级权重

一个标签选择器1分,一个类选择器10分,     一个id选择器100,        一个行内样式1000,      !important无限分 
h1 {color:blue;}   .apple {color:red;}    #id316 {color:yellow}    sytle=width:200px
另:分值相同时按后出现优先的原则算
例:
p em  {color:purple;}                   1+1=2
p.bright em.dark {color:brown;}     1+10+1+10=22
#id316 {color:yellow}                   100

More
February 03

block(块元素)、inline(内联元素)的差别

 我们首先要了解,所有的html元素,都要么是block(块元素)、要么是inline(内联元素)。下面了解一下block、inline各自的特点:

  block元素的特点:

  总是在新行上开始;
  高度,行高以及顶和底边距都可控制;
  宽度缺省是它的容器的100%,除非设定一个宽度。

 inline元素的特点:

  和其他元素都在一行上;
  高,行高及顶和底边距不可改变;
  宽度就是它的文字或图片的宽度,不可改变。

我们来详细了解它们的情况。

  块元素(block element)一般是其他元素的容器元素,块元素一般都从新行开始,它可以容纳内联元素和其他块元素,常见块元素是段落标签'P"。“form"这个块元素比较特殊,它只能用来容纳其他块元素。

  如果没有css的作用,块元素会顺序以每次另起一行的方式一直往下排。而有了css以后,我们可以改变这种html的默认布局模式,把块元素摆放到你想要的位置上去。而不是每次都愚蠢的另起一行。需要指出的是,table标签也是块元素的一种,table based layout和css based layout从一般使用者(不包括视力障碍者、盲人等)的角度来看这两种布局,除了页面载入速度的差别外,没有其他的差别。但是如果普通使用者不经意点了查看页面源代码按钮后,两者所表现出来的差异就非常大了。基于良好重构理念设计的css布局页面源码,至少也能让没有web开发经验的普通使用者把内容快速的读懂。从这个角度来说,css layout code应该有更好的美学体验。

  你能够把块容器元素div想象成一个个box,或者如果你玩过剪贴文载的话,那就更加容易理解了。我们先把需要的文章从各种报纸、杂志总剪下来。每块剪下来的内容就是一个block。然后我们把这些纸块按照自己的排版意图,用胶水重新贴到一张空白的新纸上。这样就形成了你自己独特的文摘快报了。作为一种技术的延伸,网页布局设计也遵循了同样的模式。

  内联元素(inline element)一般都是基于语义级(semantic)的基本元素。内联元素只能容纳文本或者其他内联元素,常见内联元素 “a”。

  需要说明的是:inline element的中文叫法,有多种内联元素、内嵌元素、行内元素、直进式元素。基本上没有统一的翻译,爱怎么叫怎么叫吧。另外提到内联元素,我们会想到有个display的属性是display:inline;这个属性能够修复著名的IE双倍浮动边界问题。

  块元素(block element)和内联元素(inline element)都是html规范中的概念。块元素和内联元素的基本差异是块元素一般都从新行开始。而当加入了css控制以后,块元素和内联元素的这种属性差异就不成为差异了。比如,我们完全可以把内联元素cite加上display:block这样的属性,让他也有每次都从新行开始的属性。

  可变元素是基于以上两者随环境而变化的,它的基本概念就是他需要根据上下文关系确定该元素是块元素或者内联元素。可变元素还是属于上述两种元素类别,一旦上下文关系确定了他的类别,他就要遵循块元素或者内联元素的规则限制。

  html标签的block、inline分类明细:

  块元素(block element)

  ◎ address - 地址
  ◎ blockquote - 块引用
  ◎ center - 举中对齐块
  ◎ dir - 目录列表
  ◎ div - 常用块级容易,也是css layout的主要标签
  ◎ dl - 定义列表
  ◎ fieldset - form控制组
  ◎ form - 交互表单
  ◎ h1 - 大标题
  ◎ h2 - 副标题
  ◎ h3 - 3级标题
  ◎ h4 - 4级标题
  ◎ h5 - 5级标题
  ◎ h6 - 6级标题
  ◎ hr - 水平分隔线
  ◎ isindex - input prompt
  ◎ menu - 菜单列表
  ◎ noframes - frames可选内容,(对于不支持frame的浏览器显示此区块内容
  ◎ noscript - 可选脚本内容(对于不支持script的浏览器显示此内容)
  ◎ ol - 排序表单
  ◎ p - 段落
  ◎ pre - 格式化文本
  ◎ table - 表格
  ◎ ul - 非排序列表

内联元素(inline element)

  ◎ a - 锚点◎ abbr - 缩写
  ◎ acronym - 首字
  ◎ b - 粗体(不推荐)
  ◎ bdo - bidi override
  ◎ big - 大字体
  ◎ br - 换行
  ◎ cite - 引用
  ◎ code - 计算机代码(在引用源码的时候需要)
  ◎ dfn - 定义字段
  ◎ em - 强调
  ◎ font - 字体设定(不推荐)
  ◎ i - 斜体
  ◎ img - 图片
  ◎ input - 输入框
  ◎ kbd - 定义键盘文本
  ◎ label - 表格标签
  ◎ q - 短引用
  ◎ s - 中划线(不推荐)
  ◎ samp - 定义范例计算机代码
  ◎ select - 项目选择
  ◎ small - 小字体文本
  ◎ span - 常用内联容器,定义文本内区块
  ◎ strike - 中划线
  ◎ strong - 粗体强调
  ◎ sub - 下标
  ◎ sup - 上标
  ◎ textarea - 多行文本输入框
  ◎ tt - 电传文本
  ◎ u - 下划线
  ◎ var - 定义变量

 可变元素

  可变元素为根据上下文语境决定该元素为块元素或者内联元素。

  ◎ applet - java applet
  ◎ button - 按钮
  ◎ del - 删除文本
  ◎ iframe - inline frame
  ◎ ins - 插入的文本
  ◎ map - 图片区块(map)
  ◎ object - object对象
  ◎ script - 客户端脚本

January 23

C# 委托

委托,顾名思义,就是中间代理人的意思。C#中的委托允许你将一个对象中的方法传递给另一个能调用该方法的类的某个对象。你可以将类A中的一个方法m(被包含在某个委托中了)传递给一个类B,这样类B就能调用类A中的方法m了。同时,你还可以以静态(static)的方式或是实例(instance)的方式来传递该方法。所以这个概念和C++中的以函数指针为参数形式调用其他类中的方法的概念是十分类似的。
1. 声明一个委托对象,其参数形式一定要和你想要包含的方法的参数形式一致。
2. 定义所有你要定义的方法,其参数形式和第一步中声明的委托对象的参数形式必须相同。
3. 创建委托对象并将所希望的方法包含在该委托对象中。  
4. 通过委托对象调用包含在其中的各个方法。

 public class ClassMethod
    {
        //定义被调用类的方法
        public void delegateMethod1(string input)
        {
            System.Web.HttpContext.Current.Response.Write
                (string.Format("This is delegateMethod1 and the input to the method is {0}",input));
        }
        public void delegateMethod2(string input)
        {
            System.Web.HttpContext.Current.Response.Write (string.Format(
            "This is delegateMethod2 and the input to the method is {0}",
            input));
        }
    }

*******************************


    // 声明一个委托对象
    public delegate void MyDelegate(string input);

    public class Class3
    {
        //创建委托对象并将上面的方法包含其中
         public MyDelegate createDelegate()
         {
                ClassMethod c2 = new ClassMethod();
                MyDelegate d1 = new MyDelegate(c2.delegateMethod1);
                MyDelegate d2 = new MyDelegate(c2.delegateMethod2);
                MyDelegate d3 = d1 + d2;
                return d3;
        }

         //调用它类的方法
         public void callDelegate(MyDelegate d, string input)
         {
             d(input);
         }
    }

********************************

 protected void Page_Load(object sender, EventArgs e)
        {
          //页面调用
            Class3 c3 = new Class3();
            MyDelegate d=c3.createDelegate();
            c3.callDelegate(d,"Calling the delegate");
        }

More http://www.linux-cn.com/html/program/aspnet/20070604/49717.html

December 26

CSS的颜色表示法

CSS预定义颜色表示法

color:red;
color:green;
color:blue

CSS RGB颜色表示法:

color:rgb(255,0,0);
color:rgb(0,255,0);
color:rgb(0,0,255);

CSS 16进制颜色表示法:

color:#ff0000;
color:#00ff00;
color:#1199ff

CSS 短16进制颜色表示法

color:#f00;
color:#0f0;
color:#00f
 
Photo 1 of 13