开发者

How to remove unwanted indent from HAML's pre tag

开发者 https://www.devze.com 2022-12-15 13:07 出处:网络
I have problem with <pre>, here is my code, and the screenshot is attached below. How to remove the indents?

I have problem with <pre>, here is my code, and the screenshot is attached below. How to remove the indents?

%pre.code
    :escaped
        <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
            "http://www.w3.org/TR/xhtml1/DTD/xhtml1-tr开发者_运维技巧ansitional.dtd">
        <html>
            <head></head>
            <body>
                <form>
                    <input type="text" name="empID" />
                    <input type="submit"/>      
                </form> 
            </body>
        </html>


You need to use the #preserve helper to convert the newlines in the pre to newline entities, like so:

%pre.code
    = preserve do
        :escaped
            <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
                "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
            <html>
                <head></head>
                <body>
                    <form>
                        <input type="text" name="empID" />
                        <input type="submit"/>        
                    </form>   
                </body>
            </html>

In the future, you'll be able to nest filters, so you can do :preserve:escaped.


When representing "pre" like text from a variable inside a div or other tag, use

.text.plain= preserve(@mail.body.to_s)

along with CSS "white-space: pre-wrap;". Use the one-line version, because the two-line will still indent the first line.

/ BAD: Will leave the first line incorrectly indented!
.text.plain
  = preserve(@mail.body.to_s)
0

精彩评论

暂无评论...
验证码 换一张
取 消