XHTML is used to create structure while CSS is used to define the presentation and formatting. Back in the old days, HTML handled both. While XHTML Transitional can include presentational formatting, XHTML Strict cannot. Many of the deprecated tags and attributes that still validate in XHTML Transitional will cause XHTML Strict to fail.
XHTML code creates the structure of the document, therefore an unformatted page should display pretty much the same across all browsers. CSS is a different story. Different browsers have varying support for CSS. You may find your site looks beautiful in Internet Explorer, but falls apart when viewed in Firefox or vice versa. The first step in attacking a problem such as this is to validate the code! If the code validates, you know the document structure is well-formed and the problem must lie within the CSS. Some CSS errors can be addressed by rewriting the CSS code to achieve the same results with different code. For example, if a page heading displaying atop a paragraph has a bottom border defined in CSS, the same look can be achieved by removing the bottom border and placing a top border on the paragraph. This may be an oversimplified example, but the idea holds true that the same visual formatting can often be achieved many different ways. If all else fails, it's time to research CSS hacks.