写的规范的作品demo

最外层大的功能区块要使用 id 选择器。像 class="header"class="title"class=footer 这些 class 的名称太常见了,如果在css 中这样定义样式 .header{margin: 10px}很容易出现误伤,因为这个 class 很有可能在其他地方也被使用。正确的写法是最外层功能区块用 id: <div id="header"></div> <div id="footer"></div>

命名要能体现功能,比如 像 headerfooter倒还好,根据名字我知道它在页面的作用,但像 titletext1text2让人不明所以。如何命名呢?最简单的方法是看看页面上对应区块是有什么作业,然后翻译成英文,用中横线链接即可。比如id="services"class="contact-wrap"

对于一个单词不好表示的命名用中横线而不是下划线连接,全小写(这虽然不是强制规定,但有这个意识容易养成好的代码习惯)。比如footer-wrap

去除无用标签。 比如 items 的父容器只写了个 div,这样很不合适。要不把这个 div 加个 class 或者 id,让它体现一定功能。要不直接把这个 div 去掉。

根据页面功能去写样式。比如上面代码中写了两个 .items ,每个 items 里面包含两个产品。代码作者的意思可能是因为页面上该区域有两行,每行两个元素。但实际上这样写不但出现了很多无用标签,让语义化也大打折扣,在现实实现的时候也很麻烦。 正常的写法是一个 ul,下面4个 li,设置浮动,换行自己会换的。

样式无重用。比如上例中,text1-wraptext2-wrap的功能是类似的,都是让区块居中。我们可以用一个text-wrap代替即可。

<body> <div id="header"> <div class="layout">这是标题</div>
    </div>
    <div id="product-desp">
        <div class="layout">这是大段描述</div>
    </div>
    <div id="service-desp">
        <div class="layout">这也是大段描述</div>
    </div>
    <div id="product-title">
        <div class="layout">这是中间某段标题</div>
    </div>
    <div id="products">
        <div class="layout">
            <ul class="items">
                <li>这是产品1</li>
                <li>这是产品2</li>
                <li>这是产品3</li>
                <li>这是产品4</li>
            <ul>
        </div>
    </div>
    <div id="footer">
        <div class="layout">footer</div>
    </div>
</body>

对于下面这种并列卡片的展示很多同学使用 inline-block,其实最建议大家使用浮动,副作用小并且兼容性好。

这个例子看起来简单,实际上涉及很多知识点,浮动、清除浮动、外边距合并、BFC 取消外边距合并、负边距、盒模型宽度计算)

在使用浮动的时候需要注意下面几个点:

  • 子元素设置浮动,父元素一定要清除浮动,否则会出现高度塌陷问题
  • 设置为浮动后就不会出现外边距合并,所以计算卡片宽度进行设置的时候需要考虑到这一点
  • 下面是实现方式

    高度

    一般来说,元素的高度由子元素或者 padding 自动撑开,不需要给元素添加固定高度height(可以试想加入给容器添加了固定高度,里面的内容发生变化了怎么办)。当然有些场景下可以给元素添加固定高度,一般是针对高度在任何情况下都不需要变的场景,比如顶部导航条,或者上图张卡片的高度(卡片某些卡片高度发生变化会导致浮动错乱)。

    居中

    居中最场景的问题是绝对居中的滥用。前面课程里讲了水平垂直绝对居中的写法,很多同学在写页面时只要看到了类似水平垂直居中就使用绝对居中(absolute+负 margin)。实际上只有很有限的场景才使用绝对居中,比如父容器不宽高不固定,子元素需要在父亲内容绝对居中。
    大部分情况下垂直居中只需要设置margin 或者 padding 填充即可,文字水平居中用 text-align:center, 块级元素水平居中用margin-left:auto; margin-right: auto

     

    最后编辑于
    ©著作权归作者所有,转载或内容合作请联系作者
    • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
      沈念sama阅读 194,491评论 5 459
    • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
      沈念sama阅读 81,856评论 2 371
    • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
      开封第一讲书人阅读 141,745评论 0 319
    • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
      开封第一讲书人阅读 52,196评论 1 263
    • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
      茶点故事阅读 61,073评论 4 355
    • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
      开封第一讲书人阅读 46,112评论 1 272
    • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
      沈念sama阅读 36,531评论 3 381
    • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
      开封第一讲书人阅读 35,215评论 0 253
    • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
      沈念sama阅读 39,485评论 1 290
    • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
      茶点故事阅读 34,578评论 2 309
    • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
      茶点故事阅读 36,356评论 1 326
    • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
      沈念sama阅读 32,215评论 3 312
    • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
      茶点故事阅读 37,583评论 3 299
    • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
      开封第一讲书人阅读 28,898评论 0 17
    • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
      开封第一讲书人阅读 30,174评论 1 250
    • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
      沈念sama阅读 41,497评论 2 341
    • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
      茶点故事阅读 40,697评论 2 335

    推荐阅读更多精彩内容