百度举报网站,淘宝关键词推广,做网站链接 赚钱 违法吗,公司网站建设制作商大家好#xff0c;这里是教授.F
引入#xff1a; 工程路径有一个知识点需要注意#xff1a;就是相对路径。所谓相对路径就是依赖当前位置#xff1a; 相对路径的定位依赖于当前位置或参考位置。
使用相对路径来解决#xff0c; 一个非常重要的规则#xff1a;页面所有的…大家好这里是教授.F
引入 工程路径有一个知识点需要注意就是相对路径。所谓相对路径就是依赖当前位置 相对路径的定位依赖于当前位置或参考位置。
使用相对路径来解决 一个非常重要的规则页面所有的相对路径在默认情况下都会参考当前浏览器地址栏的路径 http://ip:port/工程名/ 资源来进行跳转。 实例讲解 假设有一个 Web 应用程序部署在本地服务器上地址为 http://localhost:8080/myapp/。在该应用程序中有一个页面 index.html位于 http://localhost:8080/myapp/index.html。
在 index.html 页面中有一个相对路径引用了一个 CSS 文件 styles/main.css则默认情况下该相对路径会相对于 index.html 的路径来进行解析。 所以我们可以在index.html页面中直接写成form actionstyles/main.css methodpost
浏览器会自动对相对路径进行解析本质上就是 http://localhost:8080/myapp/style/main.css
这样就是代码简洁很多。
弊端 如上面的图。如果我们访问了a.html文件想直接跳转到my.css页面中使用相对路径是不行的因为此时的相对路径是http://localhost:8080/webpath/d1/d2。如果直接这样写my.css是跳转到的。这里就需要base标签来指定路径。
base标签 1. base 标签是 HTML 语言中的基准网址标记它是一个单标签位于网页头部文件的head标签内 2. 一个页面最多只能使用一个 base 元素用来提供一个指定的默认目标是一种表达路径和连接网址的标记。 3. 常见的 url 路径形式分别有相对路径与绝对路径如果 base 标签指定了目标浏览器将通过这个目标来解析当前文档中的所有相对路径包括的标签有a、img、link、form 4. 也就是说浏览器解析时会在路径前加上 base 给的目标而页面中的相对路径也都转换成了绝对路径。使用了 base 标签就应带上 href 属性和 target 属性
所以对于上面的例子来说在html文件中就要写上: base herfhttp://localhost:8080/web/css/mycss
补充 1.特别说明重定向 response.sendRediect(/); 这条语句虽然是在服务器执行的但是, 服务器是把斜杠 / 发送给浏览器解析。因此得到地址 http://ip[域名]:port/ 2. 在实际开发中路径都使用绝对路径而不是相对路径 3. 在 web 中 / 斜杠 如果被浏览器解析得到的地址是http://ip[域名]:port/ 比如:a herf//a这样表示是http://localhost:端口号/ 4. 在 web 中 / 斜杠 如果被服务器解析得到的地址是http://ip[域名]:port/工程路径/你也可以理解成 /工程路径/ 下面的几种情况就是如此: ● /servelturl ● servletContext.getRealPath(/); 是得到执行路径/工作路径 ● request.getRequestDispatcher(/); 5. 在 javaWeb 中 路径最后带 / 和 不带 / 含义不同, 一定要小心, 比如 a herfservlet03/a: servlet03 表示资源 a herf/a/servlet03/a: servlet03 表示路径 在编写资源路径时: , 考虑这么几点 (1) 这个路径 前面有没有 / (2) 这个路径 在哪里被解析 [服务器还是浏览器] , 如果前面有/ , 并且是在浏览器被解析的 被解析成 http://ip:port/ , 如果在服务器端被解析 , 被解析成/工程路径/ (3) 如果这个路径前面没有 / , 并且在浏览器被解析则以浏览器当前的地址栏去掉资源部分作为一个相对路径. (4) 这个路径最后有没有 / , 如果最后有/ 表示路径 如果没有/ 表示资源