img元素

文章目录

  • img
    • style
    • 与a元素联用
    • 与map元素联用
      • area
    • 和figure元素联用
    • 文字与图片在同一行
      • 解决方法
    • 希望设置导航中链接文字的盒子宽度,高度
    • 希望手动设定盒子位置
    • 关于div包裹img、iframe等标签会多3px或4px的问题
    • 图片失效时的宽高问题

img

图片元素,程序样例:

<img src="images/IDE_Xdebug_PortSet.png" alt="图片">
  • src
    指定图片路径,可以使绝对路径,也可以是相对路径

  • alt
    指定当图片访问不到时显示的字符串

style

  • height / width
    单独指定其中的一个,最终图片是长宽都缩小或者扩大对应的比例;如果同时指定两者,那么就会显示为设定的大小。

与a元素联用

可以把图片作为一个链接,点击图片即可跳转网页:

<a href="test.php"><img src="images/IDE_Xdebug_PortSet.png" alt="图片" style="height: 100px;" >
</a>

就是a元素的内容部分替换为img元素

与map元素联用

<a href="test.php?all=1"><img src="images/IDE_Xdebug_PortSet.png" alt="图片" style="height: 100px; width: 100px" usemap="#testMap">
</a><map name="testMap">
<!-- <area shape="rect" coords="0px, 0px, 50px, 50px" href="base.php?rect=1" alt="alt", target="_self"> -->
<!-- <area shape="circle" coords="75px, 25px, 25px" href="base.php?circle=1" alt="alt"> -->
<!-- <area shape="poly" coords="0px, 50px, 50px, 50px, 0px, 100px" href="base.php?poly=1" alt="alt"> --><area shape="rect" coords="0, 0, 50, 50" href="test.php?rect=1" alt="alt", target="_self"><area shape="circle" coords="75, 25, 25" href="test.php?circle=1" alt="alt"><area shape="poly" coords="0, 50, 50, 50, 0, 100" href="test.php?poly=1" alt="alt">
</map>

首先需要定义map,然后通过img中usemap属性map的name属性产生关联,然后在map中定义area,这样,img图片的不同区域就会映射到不同area,然后点击对应区域就会跳转响应链接;
同时,还可以定义整个的img图片链接,这样,在area覆盖没有覆盖的区域就跳转该链接。

area

area可以定义不同形状,coords的单位为px,可以省略单位。

  • rect
    矩形,coords为矩形左上角x, 矩形左上角y, 矩形右下角x, 矩形右下角y

  • circle
    圆形,coords为圆心x, 圆心y, 半径

  • poly
    圆形,coords为点1_x, 点1_y, 点2_x, 点2_y,... 点n_x, 点n_y,最后一个点不需要和第一个点闭环。

和figure元素联用

figure,指代,定义;
用来提升语义性,通常用于把图片、图片标题、图片描述包裹起来,表示整个信息都是描述图片信息。

<figure><img src="images/IDE_Xdebug_PortSet.png" alt="图片" style="height: 100px; width: 100px" usemap="#testMap"><figcaption><p>测试图片</p></figcaption><p>测试图片描述</p>
</figure>

figcaption,也是提升语义用的,指定figure标题。

文字与图片在同一行

当文字与图片在同一行,图片高度从小到大的规律是:

  1. 当图片在文字基线到行顶之间高度时,图片底部一直挨着基线
  2. 当图片高度超出了文字基线到行顶之间的高度,那么图片的上边会抵住行顶,此时他会顶着基线向下,所有的文字都会随着基线向下移动

解决方法

一种方法是使用浮动,一种方法是使用绝对定位将图片定位过去。

希望设置导航中链接文字的盒子宽度,高度

设置盒子的宽度、高度一般发生在需要给链接设置背景图,背景图有指定宽高;
首先,链接是行盒,他是不能直接设置,那么就需要将其转换为块盒,方法有浮动、行块盒,设置后即可设置宽高;非常方便。

希望手动设定盒子位置

不论是行盒,还是块盒,都可通过相对定位的方式实现盒子位置的手动指定。

关于div包裹img、iframe等标签会多3px或4px的问题

当img所在盒子(块盒、行块盒、行盒)高度自动,图片底部和父元素底边之间往往会出现空白。
div标签直接包裹img或iframe等标签的时候,div不设置高度,子标签设置高度,此时div标签会被撑开,同时div的高度会比子标签多3px或4px,这是由于子标签底部多了几个px的空白(基线到底线的距离),由于子标签是行内元素,display属性值为inline,类似于文本,需要把img或iframe标签设置为块级元素,即给img、iframe这些标签设置{display:block},就不会出现几像素的空白。
解决方法:

  1. 设置父元素字体为0px,有副作用,此时父元素中的文字片段设置字体大小也无法显示。
  2. 设置图片为块盒;

图片失效时的宽高问题

如果img元素的图片链接无效,那么img元素的特性和普通行盒一样,无法设置宽高。如果希望图片失效依旧可以正常显示图片大小,可以将图片设置为行块盒。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/44234.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2023河南萌新联赛第(五)场:郑州轻工业大学

A.买爱心气球 原题链接 : 登录—专业IT笔试面试备考平台_牛客网 博弈论 : #include <iostream> using namespace std; int t,n,m; string s1 "Alice",s2 "Bob"; int main() {cin>>t;while(t--){cin>>n>>m;if (n % 3 0) {cou…

【HarmonyOS】codelab在hvigor版本2.4.2上无法运行问题

【关键字】 HarmonyOS、codelab、hvigor 【问题描述】 有cp反馈集成鸿蒙codelab报错。 下载音乐专辑示例文件&#xff08;一次开发&#xff0c;多端部署-音乐专辑&#xff08;ArkTS&#xff09; (huawei.com)&#xff09;后构建项目&#xff0c;显示找不到2.5.0的hvigor。 …

数学建模之“层次分析法”原理和代码详解

一、层次分析法简介 层次分析法&#xff08;Analytic Hierarchy Process&#xff0c;AHP&#xff09;是一种用于多准则决策分析和评估问题的定量方法&#xff0c;常用于数学建模中。它是由数学家托马斯赛蒂&#xff08;Thomas Saaty&#xff09;开发的。 层次分析法将复杂的决…

读发布!设计与部署稳定的分布式系统(第2版)笔记33_混沌工程

1. 康威定律 1.1. 梅尔文康威 1.1.1. Melvin Conway 1.1.2. 1968年 1.1.3. 在设计系统时&#xff0c;组织受制于其自身的沟通结构&#xff0c;这使得它设计的系统结构与沟通结构相一致。 1.1.3.1. 社会学现象 1.2. 要在系统内部或系统之间构建接口&#xff0c;两个人必须…

C# this.Invoke(new Action(() => { /* some code */ }))用法说明

在 C# 中&#xff0c;this.Invoke(new Action(() > { /* some code */ })) 是一种用于在 UI 线程上执行代码的方法&#xff0c;通常用于在后台线程中更新 UI 控件的值或执行其他需要在 UI 线程上执行的操作。 在 Windows Forms 或 WPF 等图形界面应用程序中&#xff0c;UI …

【解决问题】远程仓库GitHub/GitLab添加了SSH Key之后依然无法clone的解决办法

GitHub/GitLab添加了SSH Key之后依然无法clone的解决办法 问题现象解决办法 问题现象 在Git远程仓库添加了自己的ssh key到账户下&#xff0c;git clone时&#xff0c;依然报错clone失败&#xff0c;请检查是否没有权限进行clone操作。 解决办法 在git的安装目录下&#xff…

「Node」下载安装配置node.js

以下是Node.js的下载、安装和配置的全面教程&#xff1a; 下载 Node.js 打开 Node.js 官方网站&#xff1a;Previous Releases在主页上&#xff0c;您会看到两个版本可供选择&#xff1a;LTS&#xff08;长期支持版本&#xff09;和最新版&#xff08;Current&#xff09;。如…

Spring事件监听源码解析

spring事件监听机制离不开容器IOC特性提供的支持&#xff0c;比如容器会自动创建事件发布器&#xff0c;自动识别用户注册的监听器并进行管理&#xff0c;在特定的事件发布后会找到对应的事件监听器并对其监听方法进行回调。Spring帮助用户屏蔽了关于事件监听机制背后的很多细节…

php_mb_strlen指定扩展

1 中文在utf-字符集下占3个字节,所以计算出来长度为9。 2 可以引入php多字节字符的扩展&#xff0c;默认是没有的&#xff0c;需要自己配置这个函数 3 找到php.ini文件&#xff0c;去掉;extension mbstring的注释&#xff0c;接着重启apache服务 可以看到准确输出的中文的长度…

Vue elementui 实现表格selection的默认勾选,翻页记录勾选状态

需求&#xff1a;当弹出一个列表页数据&#xff0c;对其进行筛选选择。 列表更新&#xff0c;填充已选数据 主要使用toggleRowSelection 代码如下&#xff1a; <el-table v-loading"loading" :data"drugList" selection-change"handleSelection…

Python 的下一代 HTTP 客户端

迷途小书童 读完需要 9分钟 速读仅需 3 分钟 1 环境 windows 10 64bitpython 3.8httpx 0.23.0 2 简介 之前我们介绍过使用 requests ( https://xugaoxiang.com/2020/11/28/python-module-requests/ ) 来进行 http 操作&#xff0c;本篇介绍另一个功能非常类似的第三方库 httpx&…

7-2 求矩阵各行元素之和

分数 15 全屏浏览题目 切换布局 作者 C课程组 单位 浙江大学 本题要求编写程序&#xff0c;求一个给定的mn矩阵各行元素之和。 输入格式&#xff1a; 输入第一行给出两个正整数m和n&#xff08;1≤m,n≤6&#xff09;。随后m行&#xff0c;每行给出n个整数&#xff0c;其间…

Rust语言深入解析:后向和前向链接算法的实现与应用

内容 - 第一部分 (1/3)&#xff1a; Rust&#xff0c;作为一个旨在提供安全、并行和高性能的系统编程语言&#xff0c;为开发者带来了独特的编程模式和工具。其中&#xff0c;对于数据结构和算法的实现&#xff0c;Rust提供了一套强大的机制。本文将详细介绍如何在Rust中实现后…

【uniapp】中 微信小程序实现echarts图表组件的封装

插件地址&#xff1a;echarts-for-uniapp - DCloud 插件市场 图例&#xff1a; 一、uniapp 安装 npm i uniapp-echarts --save 二、文件夹操作 将 node_modules 下的 uniapp-echarts 文件夹复制到 components 文件夹下 当前不操作此步骤的话&#xff0c;运行 -> 运行到小…

JavaScript函数式编程【进阶】

作者&#xff1a;20岁爱吃必胜客&#xff08;坤制作人&#xff09;&#xff0c;近十年开发经验, 跨域学习者&#xff0c;目前于海外某世界知名高校就读计算机相关专业。荣誉&#xff1a;阿里云博客专家认证、腾讯开发者社区优质创作者&#xff0c;在CTF省赛校赛多次取得好成绩。…

prompt-engineering-note(面向开发者的ChatGPT提问工程学习笔记)

介绍&#xff1a; ChatGPT Prompt Engineering Learning Notesfor Developers (面向开发者的ChatGPT提问工程学习笔记) 课程简单介绍了语言模型的工作原理&#xff0c;提供了最佳的提示工程实践&#xff0c;并展示了如何将语言模型 API 应用于各种任务的应用程序中。 此外&am…

如何解决使用npm出现Cannot find module ‘XXX\node_modules\npm\bin\npm-cli.js’错误

遇到问题&#xff1a;用npm下载组件时出现Cannot find module ‘D&#xff1a;software\node_modules\npm\bin\npm-cli.js’ 问题&#xff0c;导致下载组件不能完成。 解决方法&#xff1a;下载缺少的npm文件即可解决放到指定node_modules目录下即可解决。 分析问题&#xff1…

关于docker-compose up -d在文件下无法运行的原因以及解决方法

一、确认文件下有docker-compose.yml文件 二、解决方法 检查 Docker 服务是否运行&#xff1a; 使用以下命令检查 Docker 服务是否正在运行&#xff1a; systemctl status docker 如果 Docker 未运行&#xff0c;可以使用以下命令启动它&#xff1a; systemctl start docker …

基于51单片机直流电机PWM调速液晶1602显示设计

一、系统方案 本文主要研究了利用MCS-51系列单片机控制PWM信号从而实现对直流电机转速进行控制的方法。本文中采用了三极管组成了PWM信号的驱动系统&#xff0c;并且对PWM信号的原理、产生方法以及如何通过软件编程对PWM信号占空比进行调节&#xff0c;从而控制其输入信号波形等…

React快速入门

最近需要学到react&#xff0c;这里进行一个快速的入门&#xff0c;参考react官网 1.创建和嵌套组件 react的组件封装是个思想&#xff0c;我这里快速演示代码&#xff0c;自己本身也不太熟悉。 代码的路径是src底下的App.js function MyButton() {return (<button>I…