zoukankan      html  css  js  c++  java
  • HTML & CSS 学习笔记

    0, 准备

    学习网站推荐:

    W3school (W3C中国社区成员建的非盈利网站)(学HTMl+CSS+JS比w3cschool.cn好)

    http://www.w3school.com.cn/

    MDN火狐浏览器给开发者的在线学习:

    https://developer.mozilla.org/zh-CN/docs/Web

    VSCode插件推荐:

    Live Server 保存即自动刷新,实时预览HTML效果(原理:创建了本地服务器,端口5500,并在网页里附加实现同步刷新功能的js (WebSock协议))

    1, 关于路径(和Linux一样)

    /    根目录      (注:VSCode的Live Server根目录是项目目录,而HBuilder X是项目目录的上一层)

    ./   当前目录  (注:abc/css 等同于 ./abc/css )

    ../  上一级目录

    2, CSS边框系 ~~~ Padding   Border    Margin

    数值为负值的情况暂不讨论。

    ## nil

    <Content>代表内容  (现在假设Content是一个人)

    Border 从红线向外数值依次增大      (不吃Content,还有会随意 变胖变瘦

    Padding 从红线向里占地盘      (它可能会吃掉Content的一部分内容)

    margin 是该元素与其他相邻元素的距离,紫线内是边框安全领域(保持和其他人的车距防止追尾

    附上EDGE浏览器的说明:

    以及qq邮箱二次验证界面的那颗按钮:

    当然我个人最感兴趣的是导航栏,一开始不懂,后来去翻各大网站的html,发现他们导航栏用的CSS里都差不多这样,如下

    如IBM中国 官网

    【html】 使用ul做导航栏 - ywq4321的博客 - CSDN博客

    4, 分享我做的网页

    https://sky5454.github.io/My-static-Blog

    做了两天多的网页作业竟然被老师认为是抄的....)

    导航栏

    (以Chrome系测试)

    还记得上面提到的盒子模型吗?(记得margin默认是只占区块而不显示内容的)

    只要把盒子大小间隔调好,你就可以全覆盖地上色

    其实根本不难,只是得花时间。用margin padding border以及float调盒子位置,然后用border-raduis调圆角大小(搜索栏那个把input的padding调大,然后)

    颜色方面我设置了:    a的color和background-color   nav的background-color    #inav的背景图片

    a的伪类hover 变大变色,这样导航栏看起来就是动态的了

    <div id="inav">
            <h1 id="header">
                <span style="color:rgba(255, 20, 184, 0.671)">个人</span
                    ><span style="color: grey; font-style: inherit; ">博客</span>
            </h1>
            <nav>
                <ul>
                    <li><a href="index.html">HOME</a></li>
                    <li><a href="blogs.html">BLOGS</a></li>
                    <li><a href="share.html">MUSIC SHARE</a></li>
                    <li><a href="about.html">ABOUT</a></li>
                </ul> 
            </nav>
            <div id="search"><input type="text" placeholder="在此搜索"></div>
    /*
    整条导航栏使用id为inav的<div>块,并设置“无序列表做成的菜单项”左浮动,设置nav、ul、li的内边距,设置列表项内的链接li属性display: block实现了一个横向菜单导航栏,…。导航栏CSS代码如下:*/
     
    <style/home.css导航栏部分代码>
    * {
        margin: 0;
        padding: 0;
    }
    
    h1#header {
        float: left;
        padding-top: 0px;
        padding-left: 50px;
        border: 10px;
    }
    
    h1 > span:first-child:hover {
        border-bottom: 3px solid gray;
    }
    nav a[href="index.html"]{
        border-radius: 6px 6px 0px 0px;
        border-bottom: 3px solid purple;
        
    #inav {
        position: fixed;
        top: 0px;
        width: 1920px;    /* 大网页 */
        margin-left: 50;
        padding: 20px;
        border-bottom: 3px solid; 
        background: url(/img/nav.png) center;
        /* background: #528fe99c; */
    }
    nav a:link {
        text-decoration: none;
        padding: 3px;
        font-size: 20px
    }
    nav a:hover {
        background-color: rgba(75, 199, 236, 0.5);
        font-size: 130%;
        text-decoration: none;
        color: skyblue;
        padding: 10px;
    
        border-radius: 6px 6px 0px 0px;
        border-bottom: 3px solid red;
        width: 1000px;
        text-decoration: none;
    }
    
    nav a:active {
        color: red;
    }
    
    nav {
        width: 700px;
    margin-left: 250px;
      /* 把padding变大才能使得border变大,不能单靠margin */
        padding-top: 15px;
        padding-bottom: 40px;
        border-radius: 40px; 
       /* TODO: CSS3过渡动画 */
       border: solid 1px;
       background-color: white;
    }
    nav ul {
        padding: 3px;
        margin-left: 40px; 
    }
    nav li {
        float: left;
        display: block;         /*  显示为块级元素,前后会带有换行符 */
        margin-left: 40px;   /* 防止超链接a元素过近导致浏览器坐标变动选择产生不好的视觉效果 */
        z-index: 1;             /* 设置元素的堆叠顺序*/
    }
    /* 搜索栏外框位置与圆角处理 */
    #search {
        margin-top: -53px;
        margin-right: 500px;
        padding: 3px;
        float: right;
        border-radius: 30px;
        border: 2px solid rgb(250, 250, 250);
        background-color: #F0EEEE;
        display: flex;
    }
    /* 圆角处理搜索栏*/
    #search input{
        outline: none;
        border: none;
        border-radius: 20px;
        padding: 4px 60px 2px 20px; 
    }
    Search搜索框CSS

    事实上我是不怎么写注释的,这是后期写网页报告作业才加的....,因为只要分块清晰,代码就一目了然

     附上:用纯css实现下拉菜单的几种方式

    如果实在看不懂,看这个入门版:

     1 <!DOCTYPE html>
     2 <html lang="zh-CN">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>测试</title>
     6     <meta name="keywords" content="test,java">
     7     <link rel="stylesheet" type="text/css" href="style/index.css">
     8 </head>
     9 <body>
    10     <a href="/" accesskey="h">Home(h)</a><br/>
    11     <div id="inav">
    12         <nav>
    13         <ul>
    14             <li><a href="/index.html">Home Page</a></li>
    15             <li><a href="/query.html">Query</a></li>
    16             <li><a href="/Login.html">Login</a></li>
    17         </ul>
    18         </nav>
    19     </div>
    20     <!---->
    21 </body>
    22 </html>
    入门版index.html
     1 #inav nav li {
     2     float: left;
     3     display: block;
     4     z-index: 1;
     5     padding: 20px;
     6     margin: 0px;
     7     background: gray;
     8 }
     9 
    10 /* nav {
    11     border-color: aquamarine;
    12     border-style: solid;
    13 } */
    14 #inav nav a {
    15     text-decoration: none;
    16     color: red;      /* a的color是字体颜色 */
    17     background-color: green; /*背景色染色了context到border的背景,但默认不染色margin*/
    18 }
    19 
    20 #inav nav a:hover {
    21     font-size: 130%;
    22     color: black; /*a:hover只在鼠标悬浮在a上面时才触发的*/
    23 }
    入门版style/index.css

     

    Tips:在页面的chrome开发工具打开时 ,鼠标按住刷新键可以选择强制刷新模式(不使用缓存)

    Chrome开发工具可以取消某项CSS属性的值

    5,看到有意思的网页就打开F12看看

    例如博客园编辑器的实现和代码高亮这些功能

    或者国内外配色大胆炫酷/清新简洁的网站

    6,无论你用了什么尺寸做网页,就算是1080P大网页,在其他分辨率上通过缩放还是可以完美还原你1080P的布局的,所以不用怕1080p在低分辨率台式设备上的兼容性。用@media 规定缩放就完事了

    附上:

    自制 富文本编辑 

    --------蓝天上的云_转载请注明出处.
  • 相关阅读:
    C#序列化和反序列化开发者在线 Builder.com.cn 更新时间:20080904
    提高C#编程水平不可不读的50个要诀 开发者在线 Builder.com.cn 更新时间:20080805作者: 来源:开发者在线
    CollapsiblePanelExtender这Ajax控件
    100个冷笑话,越往后越冷(郁闷时专用……)赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞
    [转]eclipse java build path
    [转]线程间操作无效: 从不是创建控件“”的线程访问它~~~的解决方法~
    水晶报表最后空页解决方法
    JQuery资源
    Windows Explorer中对所选文件增加右键菜单并关联自己程序的例子
    [转]Oracle如何复制表的sql语句
  • 原文地址:https://www.cnblogs.com/yucloud/p/html.html
Copyright © 2011-2022 走看看