Using CSS styles: Difference between revisions

From JSXGraph Wiki
No edit summary
No edit summary
(4 intermediate revisions by the same user not shown)
Line 40: Line 40:
}
}


#xyz {
#par {
     font-decoration:underline;
     font-size:120%;
     color:blue;
     color:blue;
    background-color:yellow;
}
}


Line 54: Line 52:
var board = JXG.JSXGraph.initBoard('jxgbox', {boundingbox: [-5,5,5,-5]});
var board = JXG.JSXGraph.initBoard('jxgbox', {boundingbox: [-5,5,5,-5]});


var txt = board.create('text', [1,2, "Hello <span id='xyz'>x</span> world"],  
var txt = board.create('text', [1,2, " <span id='par'>(</span> Hello world <span id='par'>)</span>"],  
           {
           {
             cssClass:'myFont', strokeColor:'red',
             cssClass:'myFont', strokeColor:'red',
Line 88: Line 86:
     font-family: "Avant Garde", Avantgarde, "Century Gothic", CenturyGothic, "AppleGothic", sans-serif;
     font-family: "Avant Garde", Avantgarde, "Century Gothic", CenturyGothic, "AppleGothic", sans-serif;
}
}
/* Different color for parenthesis */
#par {
    font-size:120%;
    color:blue;
}
</source>
</source>
<source lang="javascript">
<source lang="javascript">
Line 94: Line 99:
var board = JXG.JSXGraph.initBoard('jxgbox', {boundingbox: [-5,5,5,-5]});
var board = JXG.JSXGraph.initBoard('jxgbox', {boundingbox: [-5,5,5,-5]});


var txt = board.create('text', [1,2, "Hello world"],  
var txt = board.create('text', [1,2, " <span id='par'>(</span> Hello world <span id='par'>)</span>"],  
           {
           {
             cssClass:'myFont', strokeColor:'red',
             cssClass:'myFont', strokeColor:'red',
Line 106: Line 111:


[[Category:Examples]]
[[Category:Examples]]
[[Category:Text]]

Revision as of 16:26, 10 January 2013

It is possible to use CSS classes for texts in a JSXGraph construction. A CSS class can be used as default text style by setting before the call of initBoard():

    JXG.Options.text.cssClass = 'myDefaultFont';

After initBoard() has been called the default class may be changed by calling

    board.options.text.cssClass = 'myDefaultFont';

Highlighted text uses the CSS class highlightCssClass.

    JXG.Options.text.highlightCssClass = 'myDefaultFont';

As with all JSXgraph options, CSS class can also be set while creating a text element. See the example below.

Attention: The CSS properties color and font-size are overwritten by the JSXGraph properties strokeWidth and fontSize.

The JavaScript code

.myFont {
    font-family: Palatino, "Palatino Linotype", "Palatino LT STD", "Book Antiqua", Georgia, serif;
    border: 1px solid black;
    padding: 5px;
    border-radius:5px;
}

.myFontHigh {
    font-family: Palatino, "Palatino Linotype", "Palatino LT STD", "Book Antiqua", Georgia, serif;
    border: 1px dashed black;
    padding: 5px;
    border-radius:5px;
}


.myDefaultFont {
    border: 1px solid black;
    padding: 1px;
    border-radius:3px;
    font-family: "Avant Garde", Avantgarde, "Century Gothic", CenturyGothic, "AppleGothic", sans-serif;
}

/* Different color for parenthesis */
#par {
    font-size:120%;
    color:blue;
}
JXG.Options.text.cssClass = 'myDefaultFont';

var board = JXG.JSXGraph.initBoard('jxgbox', {boundingbox: [-5,5,5,-5]});

var txt = board.create('text', [1,2, " <span id='par'>(</span> Hello world <span id='par'>)</span>"], 
          {
            cssClass:'myFont', strokeColor:'red',
            highlightCssClass: 'myFontHigh',
            fontSize:20
          });

var p = board.create('point', [0,0]);