让网站链接样式千奇百怪

本文将指导您如何使用Dreamweaver在网页制作时自定义鼠标样式,包括手型、十字型、文本型等,让您网页的交互体验更加丰富。

经常在各家五花八门的网站晃悠的朋友可能会注意到一些有特点的网站往往在鼠标链接指向形状上有不规则的变化,比如“十”字形,“问号”或者是不同方向的小箭头,下面我们就看看如何在网页制作时让鼠标的样式也多一点变化。

  1、启动Dreamweaver,打开要应用鼠标样式的网页,在主窗口中选择Text下拉菜单,再选择CSSStyle子菜单中的New Style命令新建样式表。

  丁香姐姐提示:如果你的网页中已经存在样式表,可以选择CSSStyles—>>Edit Style Sheet编辑样式表。

  2、弹出New Style对话框,其中Type项有三个单选按钮:Make Custom Style、Redefine HTML Tag、UseCSSSelector。Make Custom Style 是自定义样式,样式名以圆点开头;Use CSS Selector是使用CSS选择器,里边包含四个超链接样式a:active/a:hover/a:link/a:visited;Redefine HTML Tag是定义HTML系统标签的样式,如abodybr等等。如果我们只对该页面的超链接设置鼠标样式,就选择Redefine HTML Tag选项中的a标签,然后Define项选择This Document Only,单击OK按钮确定。

  3、在Style definition for 对话框,进入超链接样式设置。左边的Category是样式类别,选择Extentions项,可以看到右边Visual Effect中的Cursor项,这就是设置鼠标样式的关键项,单击右边的下拉菜单,选择你所需要的鼠标样式,单击OK按钮就可以了。

  具体可参考下表:

hand最普通,大家最熟悉的手型
crosshair十字型
text平时鼠标移动到文本上的样式
wait等待的效果
default默认的效果
help带问号的鼠标样式
e-resize向右的箭头
ne-resize向右上方的箭头
n-resize向上的箭头
nw-resize向左上方的箭头
w-resize向左的箭头
sw-resize向左下的箭头
s-resize向下的箭头
se-resize向右下方的箭头
auto 系统自动的效果
  

  4、当然根据需要你也可以将鼠标样式应用于其它标签,或者只应用于某一段文本,如果你对CSS 代码 不陌生,直接手写代码更方便,特别是想在不同的位置运用不同的鼠标样式,或者不同的标签使用不同的鼠标样式,直接将样式写在某个具体的标签里边就可以了。
# -*- coding: utf-8 -*- # @Time : 2022/8/19 13:17 # @AuThor : lzc # @Email : hybpjx@163.com # @file : __init__.py # @Software: PyCharm import asyncio from pyppeteer import launch from collections import namedtuple def screen_size(): """使用tkinter获取屏幕大小""" # 导入gui编程的模块 import tkinter # 创建一个空间界面 tk = tkinter.Tk() # 获得宽高 width = tk.winfo_screenwidth() height = tk.winfo_screenheight() tk.quit() # 得到返回值 return width, height async def main(): # 默认无头浏览器 沙盒模式 browser = await launch({'headless': False, 'args': ['--no-sandbox'], }) # 新开一个page对象 page = await browser.newPage() # 拿到一个尺寸 作为你的谷歌浏览器大小 width, height = screen_size() # 也可以自定义 await page.setViewport(viewport={"width": width, "height": height}) # 开启js await page.setJavaScriptEnabled(enabled=True) # 设置请求头 await page.setUserAgent( 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 ' '(KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 Edge/16.16299' ) # 开启 隐藏 是selenium 让网站检测不到 await page.evaluate('''() =>{ Object.defineProperties(navigator,{ webdriver:{ get: () => false } }) }''') # 访问url await page.goto(website.url) now_page = 0 while True: now_page += 1 # 滑动js 动态加载 await page.evaluate('window.scrollBy(0, document.body.scrollHeight)') # 优雅的等待1秒 不会造成 资源阻塞 await asyncio.sleep(1) # xpath li_list = await page.querySelectorAll(website.list_query) # 可将返回值返回到列表中 可省略 # item_list = [] for li in li_list: # 防止有些网站 第一条数据获取不到 第二条数据获取的到 故加个try try: # 找寻下面所有的a标签 详情页链接地址 title_obj = await li.querySelector("a ") # 找到 其 链接地址和链接标题 title_url = await page.evaluate('(element) => element.href', title_obj) title_name = await page.evaluate('(element) => element.textContent', title_obj) # 由于网站的时间 千奇百怪 有的在td 有的在p 有的在div 所有还是不要写死了 date_obj = await li.querySelector(website.title_date_query) title_date = await page.evaluate('(element) => element.textContent', date_obj) # 开一个新的对象 detail_page = await browser.newPage() # 访问详情页 await detail_page.goto(url=str(title_url)) # 拿到源码 await detail_page.content() # 拿到 详情页的selector 对象 element = await detail_page.querySelector(website.content_query) # 拿到详情页 content_html = await detail_page.evaluate('(element) => element.outerHTML', element) print(title_url, title_name, title_date, len(content_html)) await detail_page.close() except Exception as e: print(e) print(f"第{now_page}页访问>>>>>") # 点击下一页 next_page_link = website.next_page_query if next_page_link: await page.click(next_page_link) else: raise Exception("already Crawl complete Exit coming soon....") await asyncio.sleep(2) # return item_list async def page_close(browser): for _page in await browser.pages(): await _page.close() await browser.close() if __name__ == '__main__': Websites = namedtuple('websites', ['url', 'list_query', 'title_date_query', 'content_query', 'next_page_query']) websites = [ ( 'http://www.cqzbtb.cn/_jiaoyixinxi/', '.listbox ul', '.ys', '.article-wrap', "body > section > div > div.list-wrap.row > div.listpa > ul > li:nth-child(7)" ), ] for i in websites: website = Websites._make(i) a = main() loop = asyncio.get_event_loop() results = loop.run_until_complete(asyncio.gather(a))
06-19
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值