First, you'd have better luck posting this question in the General, HTML or CSS sections. Probably General would have been best. This section is specifically for Web page accessibility issues.
The "boxes" you speak of are done by using Cascading Style Sheets to transform the link tag to a block element, where it takes up as much width as possible and can be given a width and height.
PHP is a server-side scripting language. No PHP is ever read and worked with by a Web browser. The PHP engine gets PHP files and spits out HTML files which get sent to Web browsers.
There's also this thing called accessibility (hence the existence of this forum section ), meaning that HTML tags are used to describe data, and DIV tags and CSS are used to give meaningful HTML a look and feel.
HTML Goodies teaches HTML from 1998. A lot has changed since then. If you use it, be sure to get to know HTML then head to A List Apart to finally see the light.