HTML相关(四)

溢出设置

设置行内元素垂直对齐方式: top上对齐, middle中间对齐, bottom下对齐, baseline基线对齐,此处按钮下方与图片下方对齐

<head>
  <style>
    body>img{
      width: 100px;
        /* bottom下对齐*/
        vertical-align: bottom;
    }
  </style>
</head>
<body>
<input type="text"><img src="图片地址" alt="">
</body>

设置超出的部分:显示(默认)visible/隐藏hidden/滚动显示scroll,此处图片超出的部分可通过滑动显示条部分查看

<head>
  <style>
    body>div{
      width: 200px;
      height: 200px;
      border: 1px solid red;
      /*设置超出的部分:滚动显示scroll*/
      overflow: scroll;
    }
  </style>
</head>
<body>
<div>
  <img src="图片地址" alt="">
</div>
</body>

 z-index: 设置显示层级,值越大显示越靠前,int值

<head>0
  <style>
    #d1{
      width: 100px;
      height: 50px;
      background-color: red;
      position: absolute;
      /*设置显示层级,值越大显示越靠前*/
      z-index: 1;
    }
    #d2{
      width: 50px;
      height: 100px;
      background-color: blue;
      position: absolute;
      z-index: 2;
    }
  </style>
</head>
<body>
<div id="d1">这个显示在前边</div>
<div id="d2"></div>
</body>

js的引入方式

运行时,会在控制台输出:内部js代码执行成功,此行在控制台输出
                                                -------my.js:1 外部js代码成功运行!

<!----内联:在标签的事件属性中添加js代码------>
<input type="button" value="按钮" onclick="alert('按钮被点击了')">
<script>
    //控制台输出
    console.log("内部js代码执行成功,此行在控制台输出");    
</script>
<!--引入外部js文件,script标签引入文件后不能写js代码-->
<script src="my.js"></script>
-------------------------------------------------------------
<!--js内容-->
console.log("外部js代码成功运行!")

 方法的调用:

点击按钮后,控制台显示f1,其他的不点击按钮也会输出在控制台

<body>
<!---通过按钮调用方法--->
<input type="button" value="按钮" onclick="f1()">
<script>
    //1.无参无返回值的方法 
    function f1() {
        console.log("f1");
    }
    // 调用方法 
    f1();
    // 2.有参无返回值的方法
    function f2(name,age) {
        console.log(name+":"+age);
    }
    f2("张三",50);
    
    //3.无参有返回值
    function f3() {
        return "这是返回值";
    }
    let info=f3();
    console.log(info);
    //4.有参有返回值
    function f4(x,y) {
        return x*y;
    }
    let result=f4(5,9);
    console.log(result);
    //第二种定义方法的方式
    let f5=function (name,age) {
        console.log(name+":"+age);
    }
    f5("李四",30);
    //第三种定义方法的方式
    let f6 =new Function("name","age","console.log(name+':'+age)")
    f6("王五",20);
    
</script>
</body>

页面相关的方法

点击按钮后,div中的值会变成text中的值

<div>原本的值</div>
<input type="text">
<input type="button" value="按钮" onclick="f()">
<script>
    function f() {
        //得到div和文本框
        let d =document.querySelector("div");
        let i=document.querySelector("input");
        //把input的值取出赋给div
        d.innerText=i.value;
    }
</script>

悬停的动画效果

body>div>div:hover{
            /*当将块的position属性设置为relative时,与设置为absolute完全不同,这时子块是相对于他原本的位置定位,无论是否进行移动,其所占的位置仍然留有空位*/
            position: relative;
            bottom: 5px;
            /*元素阴影:x偏移值 y偏移值 浓度 范围 颜色*/
            box-shadow: 0 0 5px 8px blue;
        }

填充:大概是当空格用的,暂时没想到用法

<style>
p.padding {padding-left:2cm;}
p.padding2 {padding-left:50%;}
</style>
</head>
<body>
<p>这是一个没有左填充边距的文本。</p>
<p class="padding">这个文本的左填充边距为2厘米。</p>
<p class="padding2">这个文本的左填充边距为50%。</p>
</body>

定时器(方法名称,每隔多长时间)

<h1>0</h1>
<h2>0</h2>
<script>
    //开启定时器    
    setInterval(f,1000);
    let count = 0;
    let h1 =document.querySelector("h1");
    function f(){
        count++;
        h1.innerText = count;
    }
    //通过匿名方法开启定时器
    let timer = setInterval(function (){
        console.log(count);
        if(count==5){
            //停止计时器
            clearInterval(timer);
        }
    },100);
    //开启只执行一次的定时器
    setInterval(function () {
        let h2=document.querySelector("h2");
        h2.innerText ="时间到";
    },3000);      
</script>

在页面上添加东西,按下按钮后,会在页面上显示text中的内容以及显示一张图片

<input type="text">
<input type="button" value="按钮" onclick="f()">
<script>
    function f() {
        //通过选择器得到文本框对象
        let i = document.querySelector("input");
        //创建h1
        let h1 = document.createElement("h1");
        //设置显示的内容为文本框的值
        h1.innerText = i.value;
        //把h1添加到body里面
        document.body.append(h1);
        //创建图片标签
        let img = document.createElement("img");
        img.src = "图片地址";
        document.body.append(img);
    }
</script>

添加图片显示的代码

<input type="text" placeholder="请输入添加图片的数量" id="i1">
<input type="button" value="猫猫" onclick="f(1)">
<input type="button" value="随机来点" onclick="f(2)">
<script>
    function f(x) {
        let imgName = x==1?"猫猫的图片地址":"随便来点的图片地址";
        //得到文本框
        let i1 =document.querySelector("#i1");
        for (let i =0;i<i1.value;i++){
            //创建图片标签
            let img =document.createElement("img");
            img.src = imgName;
            img.width = 100; //设置宽度
            //添加到body;里面
            document.body.append(img);  
        }
    }
</script>

列表的创建

<input type="text" placeholder="员工姓名" id="i1">
<input type="text" placeholder="员工工资" id="i2">
<input type="text" placeholder="员工工作" id="i3">
<input type="button" value="添加" onclick="f()">
<table border="1">
    <caption>员工列表</caption>
    <tr>
        <th>姓名</th>
        <th>工资</th>
        <th>工作</th>
    </tr>
</table>
<script>
    function f() {
        //1.创建tr 
        let tr=document.createElement("tr");
        // 2.创建3个td 
        let nameTd=document.createElement("td");
        let salaryTd=document.createElement("td");
        let jobTd=document.createElement("td");
        // 3.把三个文本框的值给到三个td 
        //完整代码
        // let i1 =document.querySelector("#i1");
        // let i2 =document.querySelector("#i2");
        // let i3 =document.querySelector("#i3");
        nameTd.innerText=i1.value;
        salaryTd.innerText=i2.value;
        jobTd.innerText=i3.value;
        // 4.把td装进tr 
        tr.append(nameTd,salaryTd,jobTd);
        // 5.得到table 把tr装进table
        let table = document.querySelector("table");
        table.append(tr);
    }
</script>

自定义对象,运行后在控制台输出p1,p2的数据

<table border="1">
    <caption>商品列表</caption>
    <tr>
        <th>商品标题</th>
        <th>商品价格</th>
        <th>商品销量</th>
    </tr>
</table>
<script>
    //实例化对象  空对象
    let p1 = {};
    //动态给实例化完成的对象添加属性和方法
    p1.name = "张三";
    p1.age = 20;
    p1.run = function () {
        console.log(this.name+":"+this.age);
    }
    //调用对象的方法
    p1.run();
    //实例化自带属性和方法的对象
    let p2 = {
        name:"李四",
        age:18,
        run:function () {
            console.log(this.name+":"+this.age);
        }
    }
    p2.run();
    //通过数组装对象的方式封装 列表数据
    let arr = [{title:"商品1",price:4000,saleCount:200},
        {title:"商品2",price:500,saleCount:1200},
        {title:"商品3",price:5,saleCount:300}];
    //遍历数组 把数据展示到页面中
    for (let product of arr) {
        //创建行
        let tr = document.createElement("tr");
        let titleTd = document.createElement("td");
        let priceTd = document.createElement("td");
        let saleCountTd = document.createElement("td");
        titleTd.innerText = product.title;
        priceTd.innerText = product.price;
        saleCountTd.innerText = product.saleCount;
        //把3个td装进tr
        tr.append(titleTd,priceTd,saleCountTd);
        //把tr装进table
        let table = document.querySelector("table");
        table.append(tr);
    }
</script>

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值