如何使用 php 计算字符串的像素长度 - 来自我网站上的另一个页面
How to calculate the length in pixels of a string with php - from another page on my website
我想使用 php 为网页动态生成一些 css。
我将使用 php 页面作为 css 文档,为网页上的菜单栏动态设置一些 css 值。
css 中的 php 将为每个顶级菜单 link 设置 li 容器的宽度。
每个 li 仅包含一个顶级 link,并且每个 li 将根据其包含的 link 中文本的宽度具有不同的宽度。
因此,当网站上的页面加载时,我希望 css 页面上的 php 检索每个顶级菜单栏元素的宽度。
然后我希望 css 中的 php 设置每个 a 元素周围的 li 元素的宽度。
然后会显示该网站。
但是如何从 php css 页面中计算网页上每个 -a- 元素的文本宽度?
css 在一页上,html 在同一域的另一页上。
而且我不需要获取子菜单的宽度 links - 或 li 元素。
以下是菜单栏在 html
中的结构
<div class="navbar">
<ul>
<li class="first"><a href="page1.php">Page 1</a>
<ul>
<li><a href="page1b.php">Sub menu 1</a></li>
</ul>
</li>
<li><a href="page2.php">Page 2</a>
<ul>
<li><a href="submenu2.php">Submenu 2</a></li>
</ul>
</li>
</ul>
</div>
这介于困难、不可行和荒谬之间。 PHP 与内容的显示方式完全无关。客户端的浏览器实际上将在客户端可能应用的任何设置中以特定字体呈现文本(例如,视障人士使用 200% 的文本大小)。 PHP无法知道这一点。 PHP无法预测这一点。 PHP 无法 进入浏览器以了解它的外观。
如果有的话,客户端 Javascript 可以检查呈现的元素以查看它最终呈现的宽度。它可以通过 AJAX 将该信息发送回 PHP,但这很可能是疯狂的。不要用客户端问题来打扰服务器端代码。如果您需要以编程方式对呈现的宽度执行某些操作,请在浏览器中的 Javascript 中执行。
谢谢你们阻止我走出这个死胡同。
它帮助我找到了解决方案——在 css 中使用表格或 flexbox。这为我提供了菜单元素所需的动态样式。
http://www.sitepoint.com/responsive-fluid-width-variable-item-navigation-css/
我想使用 php 为网页动态生成一些 css。 我将使用 php 页面作为 css 文档,为网页上的菜单栏动态设置一些 css 值。 css 中的 php 将为每个顶级菜单 link 设置 li 容器的宽度。 每个 li 仅包含一个顶级 link,并且每个 li 将根据其包含的 link 中文本的宽度具有不同的宽度。
因此,当网站上的页面加载时,我希望 css 页面上的 php 检索每个顶级菜单栏元素的宽度。 然后我希望 css 中的 php 设置每个 a 元素周围的 li 元素的宽度。 然后会显示该网站。
但是如何从 php css 页面中计算网页上每个 -a- 元素的文本宽度? css 在一页上,html 在同一域的另一页上。 而且我不需要获取子菜单的宽度 links - 或 li 元素。
以下是菜单栏在 html
中的结构<div class="navbar">
<ul>
<li class="first"><a href="page1.php">Page 1</a>
<ul>
<li><a href="page1b.php">Sub menu 1</a></li>
</ul>
</li>
<li><a href="page2.php">Page 2</a>
<ul>
<li><a href="submenu2.php">Submenu 2</a></li>
</ul>
</li>
</ul>
</div>
这介于困难、不可行和荒谬之间。 PHP 与内容的显示方式完全无关。客户端的浏览器实际上将在客户端可能应用的任何设置中以特定字体呈现文本(例如,视障人士使用 200% 的文本大小)。 PHP无法知道这一点。 PHP无法预测这一点。 PHP 无法 进入浏览器以了解它的外观。
如果有的话,客户端 Javascript 可以检查呈现的元素以查看它最终呈现的宽度。它可以通过 AJAX 将该信息发送回 PHP,但这很可能是疯狂的。不要用客户端问题来打扰服务器端代码。如果您需要以编程方式对呈现的宽度执行某些操作,请在浏览器中的 Javascript 中执行。
谢谢你们阻止我走出这个死胡同。 它帮助我找到了解决方案——在 css 中使用表格或 flexbox。这为我提供了菜单元素所需的动态样式。
http://www.sitepoint.com/responsive-fluid-width-variable-item-navigation-css/